Debian 12 с Wi-Fi картой не может получить доступ в интернет, но видит локальную сеть.

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

Вот моя конфигурация (старый планшет на intel atom z3736f + usb wifi адаптер, поэтому нет настроек в BIOS для управления wifi и тому подобное):

kolya@z3736f:~$ sudo lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 015: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
Bus 001 Device 014: ID 046d:c31a Logitech, Inc. Comfort Wave 450
Bus 001 Device 013: ID 0000:0538   USB OPTICAL MOUSE
Bus 001 Device 012: ID 05e3:0610 Genesys Logic, Inc. Hub
Bus 001 Device 002: ID 1a40:0101 Terminus Technology Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

и

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         0.0.0.0         255.255.255.255 UH    0      0        0 veth4e20cf8
0.0.0.0         0.0.0.0         0.0.0.0         U     0      0        0 veth4e20cf8
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 veth4e20cf8
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 docker0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
172.18.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-d72298d3b38d
172.19.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker_gwbridge
192.168.100.0   0.0.0.0         255.255.255.0   U     0      0        0 wlxe84e0626b452
192.168.100.0   0.0.0.0         255.255.255.0   U     600    0        0 wlxe84e0626b452
192.168.100.1   0.0.0.0         255.255.255.255 UH    0      0        0 wlxe84e0626b452

и

kolya@z3736f:~$ sudo ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute 
       valid_lft forever preferred_lft forever
2: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 02:42:2e:97:49:98 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
       valid_lft forever preferred_lft forever
3: br-d72298d3b38d: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 02:42:18:07:53:3b brd ff:ff:ff:ff:ff:ff
    inet 172.18.0.1/16 brd 172.18.255.255 scope global br-d72298d3b38d
       valid_lft forever preferred_lft forever
    inet6 fe80::42:18ff:fe07:533b/64 scope link 
       valid_lft forever preferred_lft forever
4: docker_gwbridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default 
    link/ether 02:42:ec:f6:a6:87 brd ff:ff:ff:ff:ff:ff
    inet 172.19.0.1/16 brd 172.19.255.255 scope global docker_gwbridge
       valid_lft forever preferred_lft forever
    inet6 fe80::42:ecff:fef6:a687/64 scope link 
       valid_lft forever preferred_lft forever
11: veth4e20cf8@if10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker_gwbridge state UP group default 
    link/ether 46:8f:e8:6d:8d:e1 brd ff:ff:ff:ff:ff:ff link-netnsid 2
    inet 169.254.220.47/16 brd 169.254.255.255 scope global veth4e20cf8
       valid_lft forever preferred_lft forever
    inet6 fe80::448f:e8ff:fe6d:8de1/64 scope link 
       valid_lft forever preferred_lft forever
14: wlxe84e0626b452: <BROADCAST,MULTICAST,DYNAMIC,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether e8:4e:06:26:b4:52 brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.8/24 brd 192.168.100.255 scope global dynamic wlxe84e0626b452
       valid_lft 84714sec preferred_lft 84714sec
    inet6 fe80::945d:a4ab:e302:a537/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

и, наконец

kolya@z3736f:~$ traceroute 1.1.1.1
traceroute to 1.1.1.1 (1.1.1.1), 30 hops max, 60 byte packets
 1  z3736f.local (169.254.220.47)  3061.816 ms !H  3061.713 ms !H  3061.659 ms !H

Я гуглил и читал несколько подобных тем на stackoverflow, но все они как-то сами решались после перезагрузки или подобного.

Я думаю, причина в том, что маршруты для адресов, таких как 0.0.0.0, не добавляются автоматически для wifi-адаптера.

Например, вот результаты маршрутов с моего другого компьютера с ubuntu 22

➜  ~ sudo route -n    
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.100.1   0.0.0.0         UG    100    0        0 enp34s0
0.0.0.0         192.168.100.1   0.0.0.0         UG    600    0        0 wlxe84e0626b452
10.0.3.0        0.0.0.0         255.255.255.0   U     0      0        0 lxcbr0

Так что вопрос в том, как сделать так, чтобы это работало по умолчанию (добавить строки маршрутов) или как добавить новые статические строки в маршруты для моего wifi-адаптера (не важно, в какой usb порт я его подключу)?

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

Решение проблемы с доступом в интернет на Debian 12

Ваша проблема заключается в том, что после подключения Wi-Fi адаптера к Debian 12 вы не можете получить доступ к интернету, но можете видеть локальную сеть. Судя по предоставленным данным, ваш DHCP сервер, вероятно, не корректно назначает шлюз по умолчанию для вашего Wi-Fi подключения. Это может быть поправлено несколькими способами.

Шаг 1: Проверка конфигурации сети

Сначала убедитесь, что вы получили IP-адрес и шлюз от вашего DHCP сервера. В вашем случае вы можете видеть, что Wi-Fi интерфейс имеет IP-адрес 192.168.100.8, но таблица маршрутизации не содержит маршрута по умолчанию (0.0.0.0), который указывает на шлюз.

В вашем случае шлюз, согласно вашему другому ПК (Ubuntu 22), должен быть 192.168.100.1.

Шаг 2: Добавление маршрута по умолчанию вручную

Вы можете вручную добавить маршрут по умолчанию следующим образом:

  1. Откройте терминал.
  2. Введите следующую команду:

    sudo ip route add default via 192.168.100.1 dev wlxe84e0626b452

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

Шаг 3: Настройка постоянного маршрута

Чтобы этот маршрут оставался постоянным и после перезагрузки, вам нужно будет отредактировать файл конфигурации сети:

  1. Откройте файл /etc/network/interfaces с помощью текстового редактора:

    sudo nano /etc/network/interfaces
  2. Найдите секцию, связанную с вашим Wi-Fi интерфейсом (например, wlxe84e0626b452) и добавьте следующие строки:

    auto wlxe84e0626b452
    iface wlxe84e0626b452 inet dhcp
       post-up ip route add default via 192.168.100.1

Эта конфигурация гарантирует, что маршрут будет добавляться автоматически после установления соединения.

Шаг 4: Перезапуск сетевых служб

После редактирования конфигурационного файла вам нужно перезапустить сетевые службы или перезагрузить системное устройство:

sudo systemctl restart networking

Шаг 5: Проверка

После внесения этих изменений, проверьте вашу конфигурацию маршрутизации:

ip route show

Вы должны увидеть маршрут по умолчанию, который указывает на ваш шлюз, например:

default via 192.168.100.1 dev wlxe84e0626b452

Теперь попробуйте выполнить команду ping на сторонний адрес, например:

ping 8.8.8.8

Если ответ приходит, значит, ваше соединение с интернетом установлено.

Заключение

Если после выполнения всех шагов проблема все еще сохраняется, то стоит проверить, правильно ли настроен DHCP сервер на роутере, и нет ли блокировок на уровне Firewall. Убедитесь также, что на вашем Wi-Fi адаптере установлены необходимые драйвера.

Таким образом, вы сможете исправить проблемы с подключением к интернету на вашем устройстве с Debian 12.

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

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