Схожу с ума из-за безголового Wi-Fi Ubuntu 20.04.2 - много раз отключался хост отчетов ssh и ping

Мой робот работает под управлением 64-битного сервера Ubuntu 20.04.2 на Raspberry Pi 3B +. ​​

Иногда мой робот загружается, и все, кажется, идет хорошо. . Он центрирует сервопривод, записывает напряжение батареи в свой журнал life.log, но ssh и ping сообщают о неработающем хосте. "arp -a" с моего Mac сообщит:

(10.0.0.11) at (incomplete) on en0 ifscope [ethernet] 

и ssh и ping не работают. Иногда мне приходится выполнять холодную перезагрузку много-много раз, прежде чем ssh позволит мне войти.

Иногда мой робот загружается, и ssh завершается успешно, но ping и ROS2 Dynamic Discovery не работают.

Поскольку у моего робота нет головы, я использовал cloud-init, чтобы установить WiFi SSID / pswd перед первой загрузкой. Cloud-init копирует содержимое файла с именем network-config в файл /etc/netplan/50-cloud-init.yaml и запускает сеть.

Я использовал "cloud-init" для первоначальной настройки сети без головы с самого начала, отредактировав файл network-config в загрузочном разделе:

wifis:
  wlan0:
    dhcp4: true
    optional: true           <-- true tells OS: finish boot, don't wait on networking 
    access-points:
      "your_SSID":
        password: "your_netpswd"
      "another_SSID":
        password: "another_netpswd"
  • Я попытался установить необязательный флаг false для wifi0, но без разницы.

  • Брандмауэр Ubuntu ufw отключен

  • Маршрутизатор Xfinity зарезервировал IP для этого MAC-адреса

  • «Брандмауэр» маршрутизатора Xfinity блокирует только Wan-to-Lan IDENT (113)

  • Я нахожусь в США

Мой робот: 1

Есть идеи, что попробовать?

0
задан 15 July 2021 в 15:24

1 ответ

В настоящее время ROSbot Dave

успешно загрузился с полным ssh, ping, arp, и ROS2 dynamic discovery Data Distribution System DDS работает

  • 12 из 12 попыток
  • с момента смены точки доступа WiFi диапазона 2.4GHz
    • с роутера xFinity Technicolor CGM4331COM XB7
    • на мой древний DLink DIR-825 (последняя прошивка 2013 года).

Хотя я могу сказать, что робот Карл и мой DeskPi имели неустойчивые соединения с маршрутизатором(ами) xFinity, ни один из них не показал проблему "невозможно удаленно войти" (ssh), которую демонстрировал ROSbot Дейва, и я не пытался распределенно обмениваться данными по сети, когда робот Карл пробовал ROS (1).

Карл всегда был GoPiGo3 на базе Raspberry Pi 3B, но DeskPi фактически использовал точно такую же плату Raspberry Pi 3B+ (plus), что и GoPiGo3 ROSbot Dave, только DeskPi всегда работал под управлением Raspbian/PiOS.

Все эти тесты, похоже, указывают на то, что Ubuntu 20.04.2 на RaspberryPi 3B+ (или, по крайней мере, моя конкретная конфигурация Ubuntu на этой конкретной 3B+) имеет ненадежную обработку ICMP, ARP или UDP на этапе установления соединения DHCP с маршрутизатором xFinity, настроенным с зарезервированным IPv4-адресом для MAC-адреса WiFi платы.

Я не знаю достаточно, чтобы диагностировать это глубже, и, найдя решение, которое позволяет мне продвигаться в изучении ROS2 (через перенос упражнений "Hands On ROS for Robotic Programming"), я оставляю эту загадку вселенной неразгаданной.

Я заказал новый маршрутизатор WiFi 6 (с постоянной поддержкой обновления прошивки), чтобы минимизировать вероятность того, что моя сеть станет крипто-ботом или участником следующей распределенной атаки типа "отказ в обслуживании" на интернет-демократию.

0
ответ дан 28 July 2021 в 11:19

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

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