Como faço para que certos endereços da Web usem um adaptador de rede específico no Mac OS X?

16

Tenho duas conexões com a Internet em funcionamento, minha conexão Ethernet com fio (que é fortemente filtrada por um firewall, não pode ser conectada às atualizações da Apple etc.) e uma conexão sem fio sem filtro. Eu uso minha conexão sem fio como minha conexão principal, para que as coisas geralmente funcionem. No entanto, tenho alguns recursos da intranet que preciso acessar apenas pela conexão com fio. Como posso configurá-lo para que, quando visito algo como "intranet.mycompany.com" - ele seja roteado automaticamente para o adaptador de rede com fio?

JacobJ
fonte

Respostas:

10

Você precisa adicionar uma rota manualmente para cobrir todas as redes corporativas. Encontre o menor bloco de rede que cubra todos os endereços IP corporativos. Por exemplo, a rede corporativa pode estar inteiramente dentro do intervalo 172.16.22.XXX—172.16.25.XXX. Assim, seu bloco de rede seria 172.16.16.0/20:

/sbin/route add -net 172.16.16.0/20 -interface en0

Observe que na minha máquina, en0 é a Ethernet, en1 é o AirPort.

Eu tenho um script que define várias rotas para a minha situação local, que é uma rede corporativa para todos os itens corporativos (folhas de ponto, pedidos de licença, relatórios de saúde e segurança no trabalho, etc.), com Wi-Fi para os itens úteis (Bing, O 'Reilly Safari, etc). Ainda não descobri onde preciso colocar esse script para que o Mac OS X adicione automaticamente as rotas misteriosas necessárias quando a interface aparecer.

ManicDee
fonte
Outra observação: se você estragar sua tabela de roteamento como eu fiz (e não puder mais acessar nada), execute route -n flushalgumas vezes e depois mude o local da sua rede para outra coisa e volte para recuperar suas informações de roteamento normais.
geerlingguy
Eu também tenho esse problema, mas preciso fazer o oposto e direcionar apenas o tráfego para * .apple.com por meio de wifi e tudo mais por ethernet. A ferramenta de rota também pode ser usada para isso?
TraxusIV
Como faço para fazer isso "Encontre o menor bloco de rede que cubra todos os endereços IP corporativos". por favor?
Raphael Oliveira
O bloco de rede é definido pelo número de bits iniciais. No exemplo acima, o bloco de rede 172.16.16.0/20 significa "os primeiros 20 bits do endereço IP devem corresponder a 172.16.16" - os 20 significam que você está "AND" inserindo o endereço IP com '11111111.11111111.11110000.0000000' para obter os 20 bits iniciais e, em seguida, comparando esse resultado com '10101100.00010000.00010000.00000000'. Se você sabe que existe um determinado intervalo para sua rede corporativa, você precisa encontrar a maior seqüência de dígitos binários que é comum entre os dois.
ManicDee
Eu não posso agradecer o suficiente por isso! Tentei muitas outras sugestões que não funcionavam. Isso me salvou de muito trabalho para alternar entre interfaces enquanto trabalhava no ambiente corporativo! : D
DazChong
4

Você pode configurar sua ordem de serviço de rede para passar a maior parte do tráfego por Wi-fi ou Ethernet.

Isso faz com que a conexão preferida seja o serviço que você coloca no topo da lista. Infelizmente, se você deseja que a maioria das informações passe pelo Wi-fi, exceto por itens muito específicos, isso não será possível. Se a conexão Ethernet usar um intervalo de rede IP diferente do Wi-fi, ela passará automaticamente os recursos necessários pela Ethernet.

Então, digamos que você tenha a rede de lobos. Wi-fi: 192.168.1.0-192.168.1.255 Ethernet: 192.168.5.0-192.168.5.255

Quaisquer serviços que você precise acessar e que possuam um registro DNS apontando para 192.168.5.x passarão automaticamente pela Ethernet, mas sua consulta DNS ainda continuará para 192.168.1.x

Quaisquer outros sites que você visita os serviços acessam o Wi-fi, se este estiver na parte superior.

Para alterar a ordem de serviço, vá para System Preferences-> Network. Clique no menu Ação (a engrenagem na parte inferior da lista Serviços) e escolha "Definir ordem de serviço". Em seguida, arraste o serviço que você deseja ter precedência para o topo da lista.

Phillip Boushy
fonte
Sim, eu já tenho a ordem de serviço definida, mas estou procurando uma maneira de modificar as tabelas de roteamento para itens específicos. No Windows, eu usaria o comando do console "route add". Estou procurando algo semelhante no Mac.
JacobJ
Eu sei que é possível adicionar tabelas de roteamento ao OS X, uma vez que ele é construído sobre o Unix, e eu ouvi falar de pessoas fazendo isso. Mas eu não sei como. Tente pesquisar no OpenBSD Routing Table CLI. Isso deve lhe mostrar como gerenciar as tabelas de roteamento através da linha de comando. Se você não encontrar nada, me avise e eu darei uma olhada.
Phillip Boushy