Назад | Перейти на главную страницу

OS X Command Line IPv4 interface Сброс

Похоже, что VPN-клиент Juniper Network Connect оставляет сетевой интерфейс OS X в непригодном для использования состоянии, если он не отключается должным образом.

Изменить: «корректно отключиться» относится к любому моменту, когда VPN отключается по причинам, отличным от нажатия кнопки «Выйти» на программном клиенте. Это происходит, когда Wi-Fi пропадает достаточно долго, чтобы вызвать сбой VPN, или, возможно, я закрыл экран ноутбука, не забыв отключиться и т. Д.

С терминала простой пинг дает следующий результат:

ping: sendto: Cannot allocate memory

Перезагрузка решает проблему, но это неудобно.

Использование ifconfig для сброса интерфейса не работает:

ifconfig en0 down
ifconfig en0 up

Также не выполняется очистка таблицы маршрутов:

route -n flush

Я также попытался сбросить кеш DNS (это совершенно не имеет значения, но я решил, что все равно попробую). Это явно не сработало.

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

В конечном итоге надежно сработало отключение IPv4, а затем его повторное включение, выполнив следующие действия:

  1. Открыть системные настройки
  2. Щелкните значок сети
  3. Нажмите на сломанный интерфейс.
  4. Щелкните кнопку Advanced.
  5. Выберите TCP / IP
  6. Выберите «Выкл.» В разделе «Настроить IPv4».
  7. Выберите "ОК"
  8. Выберите «Применить».
  9. Повторите шаги 4–8 снова, но замените 6 желаемым методом настройки IP.

Итак, на мой вопрос ... Есть ли способ добиться того же, что и шаги 1-9 выше, из командной строки? В идеале я хотел бы иметь возможность вызвать сценарий bash для выполнения сброса.

Примечание: это было протестировано на OS X Mountain Lion и OS X Yosemite. Я пропустил OS X Mavericks, поэтому я пропустил этот конкретный тег. У меня есть все причины, по которым это относится и к Mavericks, но я не могу этого доказать.

Эти команды работали у меня.

Отключение IPv4:

sudo networksetup -setv4off Wi-Fi

Вернемся к DHCP:

sudo networksetup -setdhcp Wi-Fi

Я вижу эту проблему каждый раз, когда закрываю Network Connect VPN в любом неблагодарный манера. Я использовал ответ, предоставленный выше, и псевдоним acreages в моем /etc/profile

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

Теперь, когда это происходит, я печатаю netbounce в терминале и все в порядке с миром.

Может ты ищешь networksetup? В частности, последнее включение / выключение в этом сокращенном списке с другими опциями, которые могут быть непосредственно полезны. (Запустите эту команду без аргументов, чтобы увидеть весь огромный длинный список опций.)

 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).

Просмотрите таблицу маршрутизации и удалите все маршруты к вашим локальным сетям / сетям VPN, затем попробуйте повторно подключиться к своей VPN.

sudo route delete 192.168.1.0

или так :)