Почему я не могу пинговать Google?

16

Я не могу пропинговать google.com (неизвестный хост) . Но я могу пинговать IP-адреса. Я пытался пинговать IP-адрес Google, но он не работает.

  • resolv.conf

    nameserver 8.8.8.8 nameserver 209.139.209.33 
    
  • ifconfig -a

    eth0      Link encap:Ethernet  HWaddr 00:50:56:xx:xx:xx
              inet addr:10.2.0.63  Bcast:10.2.15.255  Mask:255.255.240.0
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:638762803 errors:0 dropped:0 overruns:0 frame:0
              TX packets:231307131 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:55502371533 (51.6 GiB)  TX bytes:23436883491 (21.8 GiB)
    
    lo        Link encap:Local Loopback
              inet addr:127.0.0.1  Mask:255.0.0.0
              UP LOOPBACK RUNNING  MTU:16436  Metric:1
              RX packets:56011078 errors:0 dropped:0 overruns:0 frame:0
              TX packets:56011078 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:4792283266 (4.4 GiB)  TX bytes:4792283266 (4.4 GiB)
    
  • route -n

    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    10.2.0.0        0.0.0.0         255.255.240.0   U     0      0        0 eth0
    169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
    0.0.0.0         10.2.15.1       0.0.0.0         UG    0      0        0 eth0
    
  • ping -c 4 -n 8.8.8.8

    4 packets transmitted, 0 received, 100% packet loss, time 13000ms
    
az93
источник
2
Вы можете искать /etc/resolv.confв справочных страницах или в поисковых системах Интернета.
41754
1
добавить содержание вашего resolve.confфайла, очень трудно помочь вам с такой краткой информацией. результат ipconfig -aтакже может быть хорошим
Kiwy
Я не могу пинговать 80.81.183.175
az93
2
Ну, у вас нет подключения к Интернету, хотя бы из ваших сетевых настроек вам, вероятно, нужен прокси-сервер, который вы сейчас используете в компании. @ az93 последний тест может бытьtraceroute 8.8.8.8
Kiwy
1
Кстати, resolv.conf должен содержать по одной записи в каждой строке
SamK

Ответы:

5

Если вы можете получить что-то по IP, но не по имени, значит, с поиском DNS что-то не так: ваша машина не может найти IP-адрес по имени. Кроме этого, ваши настройки сети и маршрутизации кажутся нормальными.

Вещи, которые могут вызвать это:

  • DNS-сервер отключен
  • Неправильный /etc/resolv.conf
  • Неправильный /etc/nsswitch.conf
  • ...

И, вероятно, другие, но первые два являются наиболее типичными.

  • Какой сервер имен в вашей сети? Узнайте его имя и IP-адрес.
  • Можете ли вы пинговать его по IP-адресу? Если вы не можете, значит, он не работает.
  • Правильно ли указан сервер имен /etc/resolv.conf? Если нет, то вам нужно добавить строку для этого, например:nameserver THE_IP
  • Сервер имен динамически устанавливается DHCP в вашей сети? Если да, то не стоит связываться /etc/resolv.conf, все должно быть автоматически, и похоже, что что-то не так на стороне вашего провайдера.
Янош
источник
Содержимое сервера имен resolv.conf 8.8.8.8 nameserver 209.139.209.33
az93
Откуда ты знаешь, что 209.139.209.33это правильно для тебя? Вы можете пинговать это?
Janos
Нет, я не могу, но я попросил на другом форуме, и они сказали мне, чтобы поставить эти адреса
az93
Я вручную установил свой адрес с помощью инструмента сетевого менеджера GUI. По какой-то причине он не обновлялся resolve.confс моим, nameserverпоэтому мне пришлось добавить его вручную. К вашему сведению, это базовая домашняя сеть, поэтому она nameserverбыла той же, gatewayоткуда я ifconfig.
Джексонкр
1

Это специфическая вещь Google. Я только что читал об этой самой проблеме в группах Google. По-видимому, когда объемы определенных типов пакетов слишком велики, Google молча отбрасывает их. 8.8.8.8 является одним из общедоступных DNS-серверов Google, и он, как известно, не работает, когда фактически игнорирует избыточные (не DNS-запросы).

Мэтью Браун ака лорд Мэтт
источник
1
Отличный ответ. У вас есть URL для этого?
Руи Ф Рибейро
1
Если я покопаюсь в истории своего браузера, я могу ее найти.
Мэтью Браун или Лорд Мэтт
0

Глядя на вашу конфигурацию IP:

eth0      Link encap:Ethernet  HWaddr 00:50:56:xx:xx:xx
          inet addr:10.2.0.63  Bcast:10.2.15.255  Mask:255.255.240.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:638762803 errors:0 dropped:0 overruns:0 frame:0
          TX packets:231307131 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:55502371533 (51.6 GiB)  TX bytes:23436883491 (21.8 GiB)

Попробуйте изменить Bcast на 10.2.255.255и Mask на255.0.0.0

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

sudo vi /etc/network/interfaces

Найдите eth0раздел и настройте IP-адрес следующим образом:

auto eth0
iface eth0 inet static
address 10.2.0.63
netmask 255.0.0.0
broadcast 10.2.255.255

Сохраните и закройте файл. После этого перезагрузите сеть:

$ sudo /etc/init.d/networking restart

Проверьте новый IP-адрес:

$ ifconfig eth0
$ ifconfig
Kevdog777
источник
0

Ошибка, которую вы не можете пропинговать www.google.com, говоря, что неизвестный хост может быть из-за неправильного разрешения DNS. Это может быть связано с тем, что вы неправильно настроили DNS в своем файле resol.conf . Но, как уже упоминалось в вопросе, если даже IP-адрес Google не может быть ping, то может быть ошибка конфигурации в шлюзе в файле / etc / network / interfaces .

gowther
источник
0

Поскольку вы не показали свой /etc/network/interfacesфайл, эта опция действительна. Попробуйте перейти со статической конфигурации на dhcp и запустите ping google.com. Если это работает, то, возможно, на другом устройстве уже указан IP-адрес, который вы запрашивали.

запустить nmap 10.2.0.*и проверить доступные адреса.

У меня была та же проблема, и я не мог понять, в чем проблема. Я проверил устройство, подключенное к маршрутизатору, и обнаружил, что на устройстве Android maudit был ip, который я написал в файле интерфейсов. Я просто изменил это, и это сработало.

UserK
источник
-1

Выполните эту команду, чтобы пинговать в Google (или любой другой сайт)

sudo echo "nameserver 8.8.8.8" >> /etc/resolv.conf

SHW
источник
8
Не делайте этого, не спрашивая себя, хотите ли вы, чтобы Google разрешал каждый ваш DNS-запрос. Вы также можете рассмотреть другие бесплатные DNS, такие как openDNS или, возможно, DNS вашего интернет-провайдера. Google 8.8.8.8 DNS по-прежнему является очень хорошим способом устранения проблем с DNS.
Kiwy
Это не меняется. Я до сих пор не могу пинговать.
az93
Почему вы пингуете до 8.8.8.8 ??? После добавления nameserver 8.8.8.8какой вывод ping google.com?
ШВ
После добавления сервера имен 8.8.8.8 я все еще не могу пинговать Google.
az93
1
Хорошо, извините, я не очень хорошо говорю по-английски. Написано: ping: неизвестный хост google.com. Это то, что вы хотели?
az93