отсутствующий маршрут для модема wifi в ubuntu

После отключения моего клиента openvpn на машине Xenial 16.04 у меня возникли проблемы с подключением к Интернету, и кажется, что мне не хватает маршрута в моей таблице IP-маршрутизации ядра.

На машине, которая не работает Я:

> route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.10.1 0.0.0.0 UG 600 0 0 wlp4s0 192.168.10.0 0.0.0.0 255.255.255.0 U 600 0 0 wlp4s0

У меня очень похожая машина, работающая с 16.04, что не работает и возвращается одна и та же команда:

Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.10.1 0.0.0.0 UG 600 0 0 wlp3s0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wlp3s0 192.168.10.0 0.0.0.0 255.255.255.0 U 600 0 0 wlp3s0

Я предполагаю, что они настроены автоматически с конфигурациями wifi и dhcp

Может ли кто-нибудь сказать мне, как настроить «нерабочую» машину, чтобы она получала все маршруты?

Следующие команды дают следующие ответы (по запросу в комментариях)

> cat /etc/resolv.conf # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 127.0.1.1 search Belkin

и

> ping 127.0.1.1 PING 127.0.1.1 (127.0.1.1) 56(84) bytes of data. 64 bytes from 127.0.1.1: icmp_seq=1 ttl=64 time=0.035 ms 64 bytes from 127.0.1.1: icmp_seq=2 ttl=64 time=0.040 ms 64 bytes from 127.0.1.1: icmp_seq=3 ttl=64 time=0.044 ms 64 bytes from 127.0.1.1: icmp_seq=4 ttl=64 time=0.038 ms 64 bytes from 127.0.1.1: icmp_seq=5 ttl=64 time=0.038 ms 64 bytes from 127.0.1.1: icmp_seq=6 ttl=64 time=0.044 ms 64 bytes from 127.0.1.1: icmp_seq=7 ttl=64 time=0.044 ms ^C --- 127.0.1.1 ping statistics --- 7 packets transmitted, 7 received, 0% packet loss, time 5997ms rtt min/avg/max/mdev = 0.035/0.040/0.044/0.006 ms
0
задан 19 March 2018 в 21:41

2 ответа

Хм, я удалил этот маршрут с моей машины и до сих пор могу связаться с Интернетом. Поэтому я не уверен, что это мешает вам «подключиться к Интернету».

Возможно, вы просто не можете разрешать имена? Вы можете проверить это с помощью dig. Вот как dig разрешает www.google.com для меня:

$ dig www.google.com A +short 108.177.126.105 108.177.126.106 108.177.126.99 108.177.126.103 108.177.126.104 108.177.126.147

Edit: Если это не решит, убедитесь, что у вас настроен один или несколько серверов имен и вы можете (IP) достичь хотя бы одного из них:

$ cat /etc/resolv.conf ... nameserver 10.20.30.41 nameserver 10.20.30.42

В этом примере машины в 10.20.30.41 и 10.20.30.42 настроены для разрешения имен (то есть: копать будут обращаться к тем, машины на порту 53 по умолчанию, чтобы разрешить www.cisco.com на IP-адрес). Таким образом, ожидается, что эти две машины будут доступны и будут обслуживаться службой DNS на порту 53.

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

$ ping 10.20.30.41 ... 64 bytes from 10.20.30.41: icmp_seq=1 ttl=255 time=0.194 ms 64 bytes from 10.20.30.41: icmp_seq=2 ttl=255 time=0.209 ms 64 bytes from 10.20.30.41: icmp_seq=3 ttl=255 time=0.235 ms ^C

Предыдущий вывод показывает, что машина на 10.20.30.41 достижима. Если это не так, вы не увидите никакого выхода (до тех пор, пока вы ^C).

Edit: : В Ubuntu 16.04 файл /etc/resolv.conf содержит запись nameserver 127.0.1.1, которая означает, что на локальном компьютере должен быть DNS-сервер. Действительно, Ubuntu 16.04 запускает dig , который действует как небольшой локальный DNS-сервер. По умолчанию Dnsmasq обрабатывается NetworkManager.

1
ответ дан 17 July 2018 в 18:31

Хм, я удалил этот маршрут с моей машины и до сих пор могу связаться с Интернетом. Поэтому я не уверен, что это мешает вам «подключиться к Интернету».

Возможно, вы просто не можете разрешать имена? Вы можете проверить это с помощью dig. Вот как dig разрешает www.google.com для меня:

$ dig www.google.com A +short 108.177.126.105 108.177.126.106 108.177.126.99 108.177.126.103 108.177.126.104 108.177.126.147

Edit: Если это не решит, убедитесь, что у вас настроен один или несколько серверов имен и вы можете (IP) достичь хотя бы одного из них:

$ cat /etc/resolv.conf ... nameserver 10.20.30.41 nameserver 10.20.30.42

В этом примере машины в 10.20.30.41 и 10.20.30.42 настроены для разрешения имен (то есть: копать будут обращаться к тем, машины на порту 53 по умолчанию, чтобы разрешить www.cisco.com на IP-адрес). Таким образом, ожидается, что эти две машины будут доступны и будут обслуживаться службой DNS на порту 53.

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

$ ping 10.20.30.41 ... 64 bytes from 10.20.30.41: icmp_seq=1 ttl=255 time=0.194 ms 64 bytes from 10.20.30.41: icmp_seq=2 ttl=255 time=0.209 ms 64 bytes from 10.20.30.41: icmp_seq=3 ttl=255 time=0.235 ms ^C

Предыдущий вывод показывает, что машина на 10.20.30.41 достижима. Если это не так, вы не увидите никакого выхода (до тех пор, пока вы ^C).

Edit: : В Ubuntu 16.04 файл /etc/resolv.conf содержит запись nameserver 127.0.1.1, которая означает, что на локальном компьютере должен быть DNS-сервер. Действительно, Ubuntu 16.04 запускает dig , который действует как небольшой локальный DNS-сервер. По умолчанию Dnsmasq обрабатывается NetworkManager.

1
ответ дан 23 July 2018 в 19:19
  • 1
    Я думаю, что вы правы, я добавил, что маршрут с «ip-маршрутом» добавляет 169.254.0.0/16 dev wlp4s0 & quot; но он все равно не соединяется. ping возвращает мне цель недоступную. Команда dig, которую вы положили, возвращает «время ожидания»; без каких-либо серверов ", любые другие предложения? – Simon B 19 March 2018 в 17:23
  • 2
    Кажется, вы не можете связаться с вашим сервером имен. Я отредактировал свой ответ с дальнейшими шагами. – lubumbax 19 March 2018 в 18:05
  • 3
    Спасибо за вашу помощь, я включил выходы команд, которые вы запросили у меня в исходном посте внизу – Simon B 19 March 2018 в 18:43
  • 4
    Добавлен обновленный вывод для ping 127.0.0.1 – Simon B 19 March 2018 в 19:46

Другие вопросы по тегам:

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