Установить интерфейс по умолчанию (не могу подключиться к Wi-Fi после того, как я установил статическую конфигурацию eth0)

479
Nisba

Я использую Alpine Linux. Я смог подключиться к Wi-Fi через wpa_supplicant, пока не установил статическую конфигурацию eth0, из-за которой мой /etc/network/interfacesфайл выглядел следующим образом

auto lo face lo init loopback  auto wlan0 face wlan0 init manual up ip link set $IFACE up down ip link set $IFACE down  auto eth0 face eth0 init static address 192.168.1.100 net mask 255.255.255.0 gateway 192.168.1.1 

Теперь мой Ethernet работает, но если я хочу подключиться к Wi-Fi, я должен прокомментировать последние 5 строк файла, перезагрузиться, а затем я могу подключиться снова (но, конечно, я теряю возможность использовать Ethernet).

Это вывод route -n

Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0 

и это вывод ip route show

default via 192.168.1.1 dev eth0  192.168.1.0/24 dev eth0 scope link src 192.168.1.100 192.168.2.0/24 dev wlan0 scope link src 192.168.2.24 

Я думаю, что проблема описана в первой строке вывода ip route show.

Как я могу сделать wlan0 выбором по умолчанию для соединения и указать операционной системе использовать eth0, когда wlan0 недоступен?

0
Я не могу определить вашу сетевую конфигурацию. Каким-то образом у вас, кажется, есть два DHCP-сервера: один в Ethernet, выдающий адреса 192.168.1.0/24, другой в WiFi, выдающий адреса 192.168.2.0/24, и только WiFi-маршрутизатор имеет доступ в Интернет. Пожалуйста, покажите схему подключения вашего сетевого оборудования. Должна быть предусмотрена возможность предоставления доступа в Интернет через Ethernet, и в этом случае WiFi не понадобится, за исключением случаев, когда требуется резервирование. AFH 6 лет назад 0
@AFH Ethernet подключен к маршрутизатору, который создает локальную сеть без доступа в Интернет. WiFi-роутер - это еще один маршрутизатор, который отправляет интернет-сигнал. Компьютер, на котором я показываю конфигурацию, является единственным, у которого есть проводной и беспроводной адаптер, другие имеют только проводной и не нуждаются в интернете Nisba 6 лет назад 0
Я никогда не нуждался в этом, но после погони за документацией, я думаю, что вам нужно добавить параметр `scope` в ваше статическое определение, и я думаю, что это должен быть` scope link`, но документация неясна, и я не в возможность проверить свою конфигурацию, поэтому вам нужно попробовать это самостоятельно. Этого одного изменения может быть достаточно, или вам может потребоваться изменить таблицу маршрутизации. Конечно, верно, что 0.0.0.0 со шлюзом 192.168.2.1 следует направлять на `wlan0`, тогда как` eth0` следует использовать для 192.168.1.0 со шлюзом 0.0.0.0 и genmask 255.255.255.0 для доступа к 192.168.1.0/24 только. AFH 6 лет назад 0

1 ответ на вопрос

0
Carlos Mendioroz

Невозможно использовать два шлюза по умолчанию (для разных сетей назначения). Если вы хотите иметь доступ к Интернету и одновременно иметь доступ к вашей внутренней сети, одним из вариантов является наличие явных статических маршрутов к вашим внутренним подсетям, и ваш маршрутизатор Wi-Fi (Интернет) будет единственным шлюзом по умолчанию.

Просто прокомментируйте строку «gateway» и добавьте статические маршруты, например:

 auto eth0 face eth0 init static address 192.168.1.100 net mask 255.255.255.0 up ip route add 10.0.0.0/8 via 192.168.1.1 

при условии, что 10.0.0.0/8 описывает остальную часть вашей внутренней сети.

Похожие вопросы