Скидання інтерфейсу IPv4 командного рядка OS X


10

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. Натисніть кнопку Додатково.
  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, звідси і причина, яку я опустив саме цей тег. У мене є всі причини, що це стосується і Мавериків, але я не можу цього довести.


"VPN-клієнт Juniper Network Connect, здається, залишає мережевий інтерфейс OS X у непридатному стані, якщо він не граціозно відключається." - Я не впевнений, який би був непристойний відключення для вашого випадку, але ми працювали приладами SA роками з клієнтами OSX і не відчували того, що ви бачите. Ви про це перевіряли з ялівцем TAC?
TheCleaner

Щоразу, коли мережне підключення падає досить довго, щоб знищити VPN, я залишаюсь у такому стані. Іноді у Wi-Fi буде відбуватися гикавка, або, можливо, я закрив ноутбук перед тим, як належним чином відключитися і т. Д. Зв'язок з Juniper TAC просто не є можливим для мого конкретного випадку.
Чак Волбер

Мій досвід полягає в тому, що коли я підключений через VPN через підключення Wi-Fi і Wi-Fi-з'єднання перестає реагувати (через політику сеансу, відмову в мережі та ін.), Клієнт Juniper Network Connect починає запитувати кореневі паролі для "зміни" речі. Ви можете вбити клієнта і перезапустити його, і навіть вимкнути і ввімкнути Wi-Fi, але клієнт ніколи не повторно підключиться без перезавантаження. Не без відповіді Суніл Р нижче.
Snapman

Відповіді:


8

Ці команди працювали на мене.

Відключення IPv4:

sudo networksetup -setv4off Wi-Fi

Повернення його до DHCP:

sudo networksetup -setdhcp Wi-Fi

3
Чудово працює. А для дротового зв'язку:s/Wi-Fi/Ethernet/
Чак Волбер

Якщо це робити віддалено (наприклад, TeamViewer), перша команда самостійно, мабуть, перерве з'єднання, тому запустіть обидві команди в одному рядку, розділеному крапкою з комою.
mwfearnley

У моєму випадку були різні назви, networksetup -listallnetworkservicesрозповідає все.
Ед Рендалл

1

Можливо, ви шукаєте 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).

1

Я бачу цю проблему щоразу, коли я закриваю VPN Network Connect будь-яким невдячним способом. Я використав відповідь, подану вище, і містить псевдонім у своєму/etc/profile

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

Зараз, коли це трапляється, я набираю netbounceтермінал, і все в порядку зі світом.


0

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

sudo route delete 192.168.1.0

або так :)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.