OS X Linha de Comando Interface IPv4 Redefinir

8

O cliente VPN do Network Connect da Juniper parece deixar uma interface de rede do OS X em um estado inutilizável se ela não se desconectar normalmente.

Editar: "desconectar normalmente" refere-se a qualquer momento em que a VPN é interrompida por motivos que não sejam clicar no botão "Sair" no software cliente. Isso acontece quando o Wi-Fi cai o tempo suficiente para fazer com que a VPN caia, ou talvez eu tenha fechado a tela do laptop sem me lembrar de desconectar, etc.

No terminal, um simples ping faz o seguinte resultado:

ping: sendto: Cannot allocate memory

A reinicialização resolve o problema, mas isso é inconveniente.

O uso do ifconfig para redefinir a interface não funciona:

ifconfig en0 down
ifconfig en0 up

Também não libera a tabela de rotas:

route -n flush

Eu também tentei redefinir o cache do DNS (completamente irrelevante, mas imaginei que tentaria mesmo assim). Isso obviamente não funcionou.

launchctl unload /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
launchctl load /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist

O que finalmente funcionou de forma confiável foi desligar o IPv4 e ativá-lo novamente usando as seguintes etapas:

  1. Abra as Preferências do Sistema
  2. Clique no ícone de rede
  3. Clique na interface quebrada.
  4. Clique no botão Avançado.
  5. Selecione TCP / IP
  6. Selecione "Desativado" em Configurar IPv4.
  7. Selecione "OK"
  8. Selecione "Aplicar".
  9. Execute as etapas de 4 a 8 novamente, mas substitua 6 pelo método de configuração de IP desejado.

Então, para minha pergunta ... Existe uma maneira de conseguir o mesmo que os passos 1-9 acima da linha de comando? Idealmente, gostaria de poder chamar um script bash para fazer a redefinição.

Observação: isso foi testado no OS X Mountain Lion e no OS X Yosemite. Eu pulei o OS X Mavericks, daí a razão que omiti essa tag específica. Eu tenho todas as razões que isso se aplica a Mavericks também, mas não posso provar isso.

    
por Chuck Wolber 22.10.2014 / 23:26

4 respostas

7

Esses comandos funcionaram para mim.

Desligando o IPv4:

sudo networksetup -setv4off Wi-Fi

Configurando de volta para o DHCP:

sudo networksetup -setdhcp Wi-Fi
    
por 11.12.2014 / 18:25
1

Eu vejo esse problema toda vez que eu fecho o Network Connect VPN de qualquer maneira ingrata . Eu usei a resposta fornecida acima e criei um alias no meu /etc/profile

alias netbounce='sudo networksetup -setv4off Wi-Fi;sudo  networksetup -setdhcp Wi-Fi'

Agora, quando isso acontece, eu digito netbounce no terminal e tudo está certo no mundo.

    
por 29.09.2015 / 13:48
0

Consulte a tabela de roteamento e remova todas as rotas para suas redes locais / VPN e tente se reconectar à sua VPN.

sudo route delete 192.168.1.0

ou mais:)

    
por 23.10.2014 / 08:26
0

Talvez você esteja procurando por networksetup ? Especificamente o on / off que é o último nesta lista abreviada com outras opções que podem ser diretamente úteis. (Execute esse comando sem argumentos para ver toda a enorme lista de opções).

 Usage: networksetup -listnetworkserviceorder
      Display services with corresponding port and device in order they are tried for connecting
      to a network. An asterisk (*) denotes that a service is disabled.

 Usage: networksetup -listallnetworkservices
      Display list of services. An asterisk (*) denotes that a network service is disabled.

 Usage: networksetup -getnetworkserviceenabled <networkservice>
      Display whether a service is on or off (enabled or disabled).

 Usage: networksetup -setnetworkserviceenabled <networkservice> <on off>
      Set <networkservice> to either <on> or <off> (enabled or disabled).
    
por 23.10.2014 / 11:57