Nie można połączyć się z RasPi przez SSH tylko z interfejsem WiFi


13

Obserwuję naprawdę irytujące problemy z łącznością z RasPi w sieci WiFi. Mam urządzenie podłączone zarówno kablem LAN, jak i Wi-Fi. Jeśli podłączony jest zarówno kabel, jak i klucz WiFi - oba interfejsy działają dobrze i jestem w stanie połączyć się z RasPi poprzez adresy IP obu interfejsów.

Jednak po odłączeniu kabla LAN - po ponownym uruchomieniu - RasPi staje się niedostępny przez SSH. Jeśli odłączę - do ponownego uruchomienia - urządzenie będzie nadal w pełni dostępne przez interfejs WiFi przez SSH! Po ponownym uruchomieniu - nie można już uzyskać do niego dostępu.

Oto moje ustawienia: / etc / network / interfaces

auto lo

iface lo inet loopback
iface eth0 inet dhcp

auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

/etc/wpa_supplicant/wpa_supplicant.conf

ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
update_config=1

network={
        ssid="linksys"
        scan_ssid=1
        mode=0
        proto=WPA2
        auth_alg=OPEN
        pairwise=CCMP
        group=TKIP
        key_mgmt=WPA-PSK
        psk="xxx-password-here"
        id_str="raspberrypi-wif"
        priority=1
}

Pomóż zidentyfikować przyczynę problemu.


Z lokalnej konsoli sprawdź, czy masz domyślną trasę po odłączeniu jednej z sieci. Wykonaj, netstat -raby zobaczyć tabelę tras. Mam podobny problem.
HeatfanJohn,

wygląda tak, jak oczekiwano, przed i po . Widzę, że eth0 właśnie zniknął z listy.
Maxim Galushka

@HeatfanJohn, udało Ci się rozwiązać problem?
Maxim Galushka

Mój interfejs eth0 zachowuje się dziwnie, interfejs pozostaje „w górze” nawet po odłączeniu kabla Cat-5.
Stworzę

dla początkujących takich jak ja, wykonując sudo raspi-confignastępnie (ponownie) włączanie SSH w Interfacing optionsMam interfejs eth1 (USB Ethernet), aby akceptować połączenia SSH zarówno z lokalnej sieci LAN, jak i Internetu
Ivan Ferrer Villa

Odpowiedzi:


8

Sprawdź, czy konfiguracja SSH jest ustawiona na nasłuchiwanie na wszystkich interfejsach. Zapewni to, że jeśli system uruchomi się i dostępne będzie tylko WiFi, będzie nasłuchiwał na interfejsie WiFi. Podejrzewam, że jest to w porządku na podstawie powyższego opisu, ale i tak warto to sprawdzić.

Inną rzeczą, którą chciałbym zrobić, to obserwować proces uruchamiania za pomocą monitora (jeśli to możliwe lub za pośrednictwem dmesg i logów po fakcie), aby sprawdzić, czy interfejs bezprzewodowy jest rzeczywiście dostępny, zanim SSH spróbuje uruchomić.

W zależności od urządzenia bezprzewodowego, może nie być zainicjowany lub niedostępny w momencie uruchamiania demona SSH, co powoduje awarię SSH, a zatem brak dostępu do Pi przez SSH po ponownym uruchomieniu tylko za pomocą sieci bezprzewodowej.


Dzięki za odpowiedź, co ciekawe, ssh jest dostępny na wszystkich interfejsach: ListenAddress 0.0.0.0w /etc/ssh/sshd_config. Widzę, że interfejs WiFi jest aktywny z routera: raspberrypi Wireless 192.168.1.105 00:02:72:B7:9A:C5ale nie mogę pingować adresu IP. Spróbuję obejrzeć boot, jak zasugerowałeś.
Maxim Galushka

Spojrzałem dmesgi odkryłem, że nawet jeśli zacznę od samego Wi-Fi, pokazuje tylko linie dotyczące eth0interfejsu i nic nie dotyczy wlan0. Naprawdę dziwne. zrzut ekranu
Maxim Galushka

Dziękuję, Hurgh, twoja odpowiedź była naprawdę pomocna. Zapomniałem, że wcześniej /boot/cmdline.txthakowałem, aby przypisać statyczny adres IP RasPi (który różni się od adresu IP, który mój router przypisał do interfejsu WiFi urządzenia). To jest w pełni mój błąd. Za pomocą dmesgbyłem w stanie debugować problem i to naprawić. Teraz działa dobrze. Wielkie dzięki!
Maxim Galushka

Cieszę się, że mogłem pomóc, przepraszam, że nie oddzwoniłem między wiadomościami. Dziękujemy również za opublikowanie ostatecznego rozwiązania, które pomoże innym (i mnie) następnym razem, gdy pojawi się to samo pytanie.
Hurgh

3

Miałem dokładnie ten sam problem na Beaglebone Black. Po marnowaniu dnia na majstrowanie przy ustawieniach / etc / network / interfaces zauważyłem, że eth0 jest aktywny / aktywny po uruchomieniu, nawet jeśli kabel sieciowy jest odłączony w czasie uruchamiania (wystarczy wydać polecenie route, a zobaczysz na liście eth0). Wydaje się to zakłócać łączność interfejsu wlan. Lekarstwem jest dezaktywacja eth0 (ifdown eth0) i niestety problem zniknął na dobre. Podłączanie i odłączanie kabla sieciowego miało ten sam efekt (ma efekt uboczny dezaktywacji eth0). Następnie mogę pingować / ssh interfejs wlan0 z dowolnego urządzenia w mojej sieci domowej. Zgadnij, że napiszę skrypt do wykrywania w czasie rozruchu, czy kabel eth jest podłączony czy nie, i wyłączania eth0, jeśli tak nie jest.


-3

O ile warto, miałem takie same problemy (ssh w porządku przez Ethernet, nie idź przez Wi-Fi) i odkryłem, że wlan0 w / etc / network / interfaces ustawiono na manual, a nie na dhcp. Zmieniłem to i zacząłem działać poprawnie po restarcie


Czy przejrzałeś plik / etc / network / interfaces, który zawiera OP?
Steve Robillard
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.