IPv6 работает, но IPv4 не работает

У меня есть новый ноутбук под управлением Ubuntu 16.04, который пару недель работал как шарм, но теперь потерял аппетит для подключения к интернету через Wi-Fi. Я знаю, что это не проблема с моим маршрутизатором или интернет-провайдером, потому что я пишу эту статью, используя свой старый ноутбук с Windows в той же домашней сети, к которой ноутбук Ubuntu не будет подключаться.

Я успешно подключаюсь к роутеру и работаю nmcli dev показывает, что я подключен к своему устройству Wi-Fi (wlp2s0) и к беспроводной сети.

Прошлой ночью я смог открыть некоторые страницы (Google, Facebook, YouTube), но не другие (ubuntu.com, riken.jp). В то время я подозревал, что IPv6 работал, а IPv4 - нет. Теперь, однако, ничего не работает. Хром, пинг, wget, копать - ничего. /etc/resolv.conf/ вообще ничего не содержит (кроме строк комментариев, говорящих мне не редактировать его), а таблица возвращается route пустой.

ОБНОВЛЕНИЕ 1: я использовал ipconfig /all на моей машине Windows, чтобы выяснить, какие DNS-серверы он использовал (75.75.75.75, 75.75.76.76., 2001:558:feed::1, 2001:558:feed::2), затем использовал сетевые подключения, чтобы добавить их как DNS-серверы для моей домашней сети. cat /etc/resolv.conf теперь дает мне nameserver 127.0.1.1; Я не совсем уверен, что это значит, но я думаю, что это какой-то псевдоним, верно? nmcli dev show | grep DNS показывает, что я использую два DNS-сервера IPv6 (2001:558:feed::1 и 2001:558:feed::2).

я могу получить wget работать с URL-адресами, которые разрешаются в адрес IPv6, например так:

craig@craig-XPS-13-9370:~$ wget www.google.com
--2018-04-14 13:06:17--  http://www.google.com/
Resolving www.google.com (www.google.com)... 2607:f8b0:4004:808::2004, 
172.217.13.68
Connecting to www.google.com 
(www.google.com)|2607:f8b0:4004:808::2004|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘index.html.5’

index.html.5            [ <=>                ]  10.41K  --.-KB/s    in 0.003s  

2018-04-14 13:06:17 (3.36 MB/s) - ‘index.html.5’ saved [10659]

Я не могу получить wget запрос на работу с URL-адресами, которые разрешают использовать адрес IPv4:

craig@craig-XPS-13-9370:~$ wget www.ubuntu.com
--2018-04-14 13:06:28--  http://www.ubuntu.com/
Resolving www.ubuntu.com (www.ubuntu.com)... 91.189.89.118
Connecting to www.ubuntu.com (www.ubuntu.com)|91.189.89.118|:80... failed: 
Network is unreachable.

Добавление -4 флаг для wget чтобы заставить использование IPv4 получить похожий результат:

craig@craig-XPS-13-9370:~$ wget -4 www.google.com
--2018-04-14 13:06:41--  http://www.google.com/
Resolving www.google.com (www.google.com)... 172.217.13.68
Connecting to www.google.com (www.google.com)|172.217.13.68|:80... failed: 
Network is unreachable.

Так же, ping www.google.com не работает, но ping6 www.google.com делает. Так что довольно ясно, что с IPv4 что-то не так, но я не уверен, что...

ОБНОВЛЕНИЕ 2: Я думал, что моя проблема выглядела почти как этот вопрос, но предложенное там решение (отключение IPv4 через сетевые подключения), похоже, ни на что не повлияло. Это дало мне некоторые идеи о том, чем полезно поделиться с другими, хотя:

Выход из cat /etc/network/interfaces:

craig@craig-XPS-13-9370:~$ cat /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

Выход из ifconfig:

craig@craig-XPS-13-9370:~$ ifconfig
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:13526 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13526 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:1031920 (1.0 MB)  TX bytes:1031920 (1.0 MB)

wlp2s0    Link encap:Ethernet  HWaddr 9c:b6:d0:8b:4b:c5  
          inet6 addr: fe80::1f3b:5545:508:919a/64 Scope:Link
          inet6 addr: 2601:140:8600:e0:d64b:9272:665f:3734/64 Scope:Global
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:19665 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10262 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:14731745 (14.7 MB)  TX bytes:1722860 (1.7 MB)

Выход из iwconfig:

craig@craig-XPS-13-9370:~$ iwconfig
lo        no wireless extensions.

wlp2s0    IEEE 802.11abgn  ESSID:"MOTOROLA-ABD39"  
          Mode:Managed  Frequency:2.447 GHz  Access Point: 34:1F:E4:E4:35:D0   
          Bit Rate=1 Mb/s   Tx-Power=20 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:on
          Link Quality=55/70  Signal level=-55 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:39   Missed beacon:0

Выход из cat /etc/resolv.conf:

craig@craig-XPS-13-9370:~$ 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

Выход из route -n:

craig@craig-XPS-13-9370:~$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

Выход из route -6 -n:

craig@craig-XPS-13-9370:~$ route -6 -n
Kernel IPv6 routing table
Destination                    Next Hop                   Flag Met Ref Use If
2601:140:8600:e0::/64          ::                         U    600 0     0 wlp2s0
2601:140:8600:e0::/60          fe80::361f:e4ff:fee4:35cf  UG   600 0     0 wlp2s0
fe80::/64                      ::                         U    256 0     0 wlp2s0
::/0                           fe80::361f:e4ff:fee4:35cf  UG   600 2     4 wlp2s0
::/0                           ::                         !n   -1  1  1495 lo
::1/128                        ::                         Un   0   7    46 lo
2601:140:8600:e0:d64b:9272:665f:3734/128 ::                         Un   0   2   150 lo
fe80::1f3b:5545:508:919a/128   ::                         Un   0   2     4 lo
ff00::/8                       ::                         U    256 7    99 wlp2s0
::/0                           ::                         !n   -1  1  1495 lo

Выход из ip neigh:

craig@craig-XPS-13-9370:~$ ip neigh
fe80::361f:e4ff:fee4:35cf dev wlp2s0 lladdr 34:1f:e4:e4:35:cf router REACHABLE

6 ответов

Не уверен, что это постоянное решение, но мне удалось снова заставить работать, освободив и обновив мой IP-адрес: sudo dhclient -r wlp2s0 sudo dhclient wlp2s0

Теперь я вижу inet addr линия, когда я бегу ifconfig (который никогда не был там раньше) и cat /etc/resolv.conf добавила сервер имен IPv4 и строку поиска для моего провайдера (search hsd1.va.comcast.net). Задача решена!

Иногда это может быть вызвано неправильным системным временем. Если ваше системное время слишком далеко, вы не будете арендовать IPv4 по DHCP - только IPv6.

Вы можете проверить настройки системного времени, запустив timedatectl в терминале.

Если вам нужно перенастроить системное время и / или часовой пояс, запустите sudo dpkg-reconfigure tzdata в терминале.

Назначение статического IP/ шлюза /DNS также может работать независимо, но некоторые веб-сайты будут жаловаться.

В моем случае (в Ubuntu 20.04 FWIW) сетевая карта не была настроена на использование DHCP. я должен был обновить /etc/netplan/00-installer-config.yamlс

      network:
  ethernets:
    enp5s0:  # new interface
      dhcp4: true

а затем запустить netplan apply

Я не могу вспомнить, приходилось ли мне также бежать dhclient -r enp5s0чтобы заставить его снова получить DHCP.

Потратив целый день на устранение неполадок на ноутбуке, изменение моего мобильного APN с ipv6 на ipv4/ipv6 наконец-то помогло.

У меня разорвалось проводное соединение после запуска брандмауэра: sudo ufw enable

После этого отключение брандмауэра все еще не устранило проблему.

Посмотрев на конфигурацию сети через графический интерфейс (Проводное подключение -> Настройки проводной сети), я смог увидеть, что IPv4 не был включен автоматически.

Щелкните значок конфигурации (шестеренка), выберите "Автоматическое подключение". Затем щелкните вкладку IPv4 и выберите "Автоматически (DHCP)".

Подождите немного, и это сработало.

У меня та же проблема. И все вышеперечисленные решения у меня не работают. После борьбы полдня. Я обнаружил, что это проблема времени BIOS. Если вы не найдете возможного решения. Пожалуйста, проверьте правильность времени вашего BIOS. По крайней мере у меня после исправления времени биоса все ок.

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