Я використовую Alpine Linux. Мені вдалося підключитися до wifi через 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 працює, але якщо я хочу підключитися до wifi, я повинен прокоментувати останні 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 типовим вибором для підключення та сказати OS використовувати et0, коли wlan0 недоступний?
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.