Назад | Перейти на главную страницу

«Нет маршрута к хосту» до «ping» или «route»

У меня два компьютера в одной сети WiFi:

Иногда (один раз из десяти) после перезагрузки B я не могу выполнить ssh с A на B:

$ ssh 192.168.201.128
ssh: connect to host 192.168.201.128 port 22: No route to host

Когда я пытаюсь пинговать его, я получаю:

$ ping 192.168.201.128
PING 192.168.201.128 (192.168.201.128) 56(84) bytes of data.
From 192.168.201.133 icmp_seq=1 Destination Host Unreachable
From 192.168.201.133 icmp_seq=2 Destination Host Unreachable
From 192.168.201.133 icmp_seq=3 Destination Host Unreachable

ARP может быть проблемой:

$ arp
Address                  HWtype  HWaddress           Flags Mask            Iface
_gateway                 ether   70:4c:a5:a7:c2:57   C                     wlp2s0
192.168.201.128                  (incomplete)                              wlp2s0

Я пытался исправить это так:

$ sudo arp -d 192.168.201.128
$ arping -c 10 -I wlp2s0 192.168.201.128
ARPING 192.168.201.128 from 192.168.201.133 wlp2s0
Sent 10 probes (10 broadcast(s))
Received 0 response(s)

нет эффекта :(

Я могу обойти проблему, подключив монитор и клавиатуру к B (серверу) и выполнив одно из следующих действий:

1) пинг A (клиент)

ИЛИ

2) набрав "маршрут" в терминале

Потом все возвращается в норму.

Есть идеи, почему это может происходить? Я предполагаю, что B иногда неправильно обнаруживает шлюз. Я не могу это проверить, потому что, когда я набираю «маршрут» в терминале B, все возвращается в норму.

Боковые примечания:

  1. На B (сервере) нет брандмауэра
  2. A (клиент) - это рабочий стол Ubuntu 18.04.
  3. B (сервер) - это минимальный Ubuntu 16.04 (возможно, отсутствует какой-то важный пакет для обнаружения arp / auto gw?)
  4. Конфигурация B (серверных) интерфейсов:
$ cat /etc/network/interfaces
auto lo
iface lo inter loopback

То, что я использовал в прошлом, - это объединить / добавить эти серверы (которые должны быть доступны) в файл hosts и очистить ваш кеш DNS. Вы можете найти хороший ресурс для редактирования вашего файла hosts Вот.

В зависимости от версии linux / unix / mac вы можете найти свой файл на /etc/hosts или /private/etc/hosts.

Оказавшись там, вы можете добавить новый сервер / хост, добавив строку в формате, например:

 192.168.201.128 remote_host

Вы можете увидеть примеры в хозяева файл

Затем вы можете заставить изменения произвести эффект очистки DNS, что похоже на проблему, с которой вы столкнулись.

  dscacheutil -flushcache

Предлагаю вам проверить свой WiFi-роутер. После перезагрузки сервера, сможете ли вы увидеть в административном интерфейсе маршрутизатора IP-адрес, арендованный с его внутреннего DHCP-сервера для вашего сервера? Можете ли вы пропинговать сервер со своего роутера? Возможно ли кабельное соединение между маршрутизатором и сервером?

У меня дома возникает аналогичная проблема с ноутбуком и смартфоном, подключенными к сети Wi-Fi, предоставляемой старым маршрутизатором TP-Link TLWR340G. Иногда мне не удается установить соединение со смартфоном и компьютером, несмотря на то, что оба устройства успешно устанавливают подключение к Интернету. Когда возникает такая проблема, я решаю ее, проверяя связь со смартфоном с компьютера до тех пор, пока не получу ответ, что обычно происходит после 20 пропущенных пакетов.