Как сбросить сетевой адаптер с помощью команды терминала?

19

Что ж, когда я выключаю маршрутизатор, а затем снова включаю его во время работы Ubuntu, он не получает IP-адрес автоматически:

введите описание изображения здесь

Я нажимаю на отключить, но он остается, как указано выше.

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

Итак, как мне сбросить сетевой адаптер с помощью команды терминала или каких-либо других предложений?

Редактировать: я пытался использовать sudo dhclient, но это не сработало.

Binarylife
источник
Вы пытались отключить / включить всю беспроводную сеть через nm? (не помню, если 11.04 имеет эту функцию, хотя).
энзотиб
Сетевой менеджер? Это позволяло отключить сеть или беспроводную сеть в меню, которое вы получили, нажав на его значок.
энзотиб
Да, я понял. Вы хотите снять флажок «включить беспроводную связь» у администратора сети?
Binarylife
Да, я имею в виду это
энзотиб
Да, это не сработало.
Binarylife

Ответы:

16

Если вы действительно хотите сбросить сетевой адаптер, вам обычно нужно выгрузить и перезагрузить модуль ядра, который он использует.

Если вы просто хотите перенастроить его, вы обычно можете сделать:

sudo /etc/init.d/network-manager restart

Но если вы просто хотите получить новую аренду dhcp (это техническое имя для получения нового IP-адреса от маршрутизатора), вам просто нужно использовать:

sudo dhclient -v eth1
Хавьер Ривера
источник
Так sudo dhclientполучит ли новый IP-адрес?
Binarylife
@Binarylife да, это должно дать вам новый IP-адрес. Если это не так, возможно, виноват DHCP маршрутизатора, а не ваша карта Wi-Fi.
Томас Уорд
@ The Evil Phoenix: Хорошо, я попробую, когда у меня снова возникнет проблема, спасибо.
Binarylife
Если это не работает, сообщения, которые он выведет, могут быть полезны для отладки.
Хавьер Ривера
2
ИМХО этот ответ не будет работать, так как обе упомянутые команды относятся к перечисленным устройствам в / etc / network / interfaces. При обычной установке Ubuntu там указывается только «loopback».
minimec
8

Это звучит как проблема сетевого менеджера для меня.

Я бы попробовал следующее: (в терминале гномов)

  1. «Softblock» вашего беспроводного устройства с rfkill block wifi
  2. rfkill list покажет вам, если вы были успешны.
  3. killall nm-applet Вы убиваете процесс сетевого администратора (значок панели исчезнет).
  4. rfkill unblock wifi Включите Wi-Fi снова.
  5. nm-applet Загрузите новый сеанс сетевого менеджера.

Может быть, просто убить / загрузить nm-applet. Также обратите внимание, что вам не нужно использовать sudo для этого.

Я знаю, что некоторые маршрутизаторы и устройства Wi-Fi не очень хорошо «любят» друг друга. Это часто проблема как-то «бета» Wi-Fi Linux-драйвера ...

minimec
источник
Спасибо за ваш ответ, я тоже попробую. Кстати я использую Siemens ADSL sl2-141роутер.
Binarylife
1

Я написал сценарий, чтобы попробовать различные методы для сброса Wi-Fi, когда он разорвал соединение или по другим причинам не отвечает (он вызывается каждые 2 минуты в cron):

  #!/bin/sh
  # program to check wifi and reset if not running
  IPTEST=192.168.1.1
  iwconfig=/sbin/iwconfig
  rfkill=/usr/sbin/rfkill
  DEVICE=`$iwconfig | egrep 802 | awk ' {print $1}'`

  if ping -c 1 $IPTEST >/dev/null 2>&1 ; then
    #echo $IPTEST ok
    exit 0
  else
    # Failed, try to reset wifi - sometimes works ok
    (
    date
    echo "Apagando wifi...."
    nmcli nm wifi off
    sleep 3
    echo Iniciando wifi....
    nmcli nm wifi on
    sleep 10
    if ping -c 1 $IPTEST >/dev/null 2>&1 ; then
        #echo $IPTEST ok
        exit 0
    else
        # try another way
        echo "Apagando wifi $iwconfig ...."
        $iwconfig
        $iwconfig $DEVICE txpower off
        sleep 3
        echo Iniciando wifi....
        $iwconfig $DEVICE txpower auto
    fi
    sleep 10
    if ping -c 1 $IPTEST >/dev/null 2>&1 ; then
        #echo $IPTEST ok
        exit 0
    else
        # try another way
        echo "Apagando wifi $rfkill ...."
        $rfkill list
        $rfkill block wifi
        sleep 3
        echo Iniciando wifi....
        $rfkill unblock wifi
    fi
    #echo Cerrar esta ventana cuando sale el estado
    #sleep 3
    #iftop -i $DEVICE
    )  >> $HOME/wificheck.log 2>&1
  fi
  exit 0
Мистер Эд
источник
И то и другое; rfkillи nmcliпомог мне.
голоса
1
nmcli radio wifi off
nmcli radio wifi on

работает для меня :-)

bebopalooblog
источник