Включение/выключение сетевого интерфейса через командную строку

Вопрос или проблема

В Xubuntu 14.04 я попытался использовать как ip, так и ifconfig для управления сетевым интерфейсом, но они дали одинаковый результат.

$ sudo ifconfig wlan0 down
$ sudo ip link set wlan0 down

оба корректно отключили интерфейс и связь не работала; но затем

$ sudo ifconfig wlan0 up
$ sudo ip link set wlan up

не восстановили соединение!

Это вывод ip link show после отключения интерфейса:

wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether <my_MAC_address> brd ff:ff:ff:ff:ff:ff
inet 192.168.1.29/24 brd 192.168.1.255 scope global wlan0
   valid_lft forever preferred_lft forever

и это вывод после включения интерфейса:

wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
link/ether <my_MAC_address> brd ff:ff:ff:ff:ff:ff
inet 192.168.1.29/24 brd 192.168.1.255 scope global wlan0
   valid_lft forever preferred_lft forever

То есть нет носителя и я не могу войти в интернет, но IP адрес есть!

1) Почему? Разве команда up не должна восстановить прежнее состояние? Мне пришлось выключить и включить физический переключатель беспроводной платы, чтобы снова получить доступ в интернет. Я также пробовал dhclient -r wlan0 и dhclient wlan0, но результат был таков, что даже физический переключатель не помогал, и мне пришлось перезагружать всю систему.

2) Даже после отключения интерфейса, иконка соединения в GUI оставалась активной, и подключение к беспроводной точке доступа отображалось нормально (хотя веб-страницы не были доступны). Почему?

Я думаю, что ifconfig не обрабатывает беспроводные вещи, такие как ESSID, канал и ключ. Взгляните на iwconfig.

http://manpages.ubuntu.com/manpages/vivid/en/man8/iwconfig.8.html

-РЕДАКТИРОВАНО-

Вы также можете использовать “Командную строку NetworkManager” nmcli: https://askubuntu.com/questions/461825/connect-to-wifi-from-command-line

1) Этот ответ подходит только для проводного соединения. Используйте ifup и ifdown, а не ifconfig, если вы не хотите вручную указывать параметры. ifup проверит вашу сетевую конфигурацию в /etc/network/interfaces (или в другом месте, где это настроено в вашей дистрибуции).

2) Если вы используете WPA для вашего WiFi, вы не можете подключиться к нему просто с помощью ifup; необходимо настроить и запустить вспомогательное приложение (обычно wpa_supplicant). Обычно ваша дистрибуция предоставляет вам сетевые скрипты для автоматического выполнения этих задач.

Та же проблема,

    `wlan0: **<NO-CARRIER,BROADCAST,MULTICAST,UP>** mtu 1500 qdisc noqueue state **DOWN** mode DEFAULT group default qlen 1000
link/ether 20:e1:17:06:01:06 brd ff:ff:ff:ff:ff:ff`

вы можете использовать эти команды

sudo ip link set wlan0 up

sudo systemctl restart NetworkManager

после команд

wlan0: **<BROADCAST,MULTICAST,UP,LOWER_UP>** mtu 1500 qdisc noqueue state **UP** group default qlen 1000
link/ether 20:e1:17:06:01:06 brd ff:ff:ff:ff:ff:ff

и мой пользовательский интерфейс включен, я могу подключиться к любой сети

Ответ или решение

Заголовок: Управление сетевыми интерфейсами в Xubuntu 14.04: решение проблемы подключений через командную строку

Введение

Управление сетевыми интерфейсами через командную строку в Xubuntu 14.04 может казаться сложной задачей, особенно когда традиционные способы, такие как ifconfig и ip, не восстанавливают соединение после того, как интерфейс был выключен. В этом ответе мы подробно рассмотрим, как правильно произвести необходимые действия для восстановления подключения, и какие дополнительные инструменты и команды могут быть полезны в решении таких проблем.

Анализ проблемы

В описанном случае используется команда для перевода интерфейса wlan0 в состояние "вниз":

$ sudo ifconfig wlan0 down
$ sudo ip link set wlan0 down

Это корректно отключает интерфейс, но обратный процесс:

$ sudo ifconfig wlan0 up
$ sudo ip link set wlan0 up

не восстанавливает подключение к сети, хотя интерфейс все еще имеет IP-адрес.

После подъёма интерфейса он отображается в состоянии NO-CARRIER, что указывает на отсутствие физического соединения с точкой доступа.

Решение

  1. Использование правильных инструментов: Одной из причин может быть то, что ifconfig не управляет беспроводными параметрами, такими как ESSID и ключи шифрования. Вместо этого используйте iwconfig для беспроводных сетей. Это позволит вам изменить параметры подключения и ESSID.

  2. Использование nmcli: Xubuntu обычно использует NetworkManager для управления сетями. Чтобы это исправить, перезапустите NetworkManager:

    sudo ip link set wlan0 up
    sudo systemctl restart NetworkManager

    Эти команды обновляют состояние интерфейса до LOWER_UP, что указывает на успешное физическое соединение с точкой доступа.

  3. Настройки WPA: Если вы подключены к сети WPA, убедитесь, что wpa_supplicant запущен и правильно сконфигурирован, так как он управляет аутентификацией в сетях WPA.

  4. Проверка конфигурации сети: Проверьте файл конфигурации сети, обычно расположенный в /etc/network/interfaces, чтобы убедиться, что параметры настройки заданы правильно.

  5. Дополнительная диагностика: Используйте dmesg или journalctl для диагностики и поиска ошибок, связанных с беспроводными интерфейсами, которые могут указывать на аппаратные проблемы.

Заключение

Восстановление подключения к беспроводной сети после отключения интерфейса требует понимания взаимодействия между системными инструментами и сетевыми менеджерами. Используя iwconfig, nmcli и правильные процедуры перезапуска, можно устранить проблему и обеспечить стабильное подключение к сети. Для будущего управления сетевыми устройствами рекомендуется изучить документацию Xubuntu и использовать встроенные инструменты управления сетью для достижения наилучших результатов.

Оцените материал
Добавить комментарий

Капча загружается...