Zaktualizowałem Raspberry Pi do Jessie, która korzysta systemd
. Jednym z efektów ubocznych jest to, że łączy się tylko przy użyciu IPv6 i nie ma adresu IPv4. Jak mogę zmusić go do uzyskania adresu IPv4 z serwera DHCP?
Jednym z rozwiązań ad-hoc jest polecenie
sudo dhclient -4 -v eth0
ale to trwa tylko dla bieżącej sesji.
raspbian
networking
ethernet
raspbian-jessie
systemd
John Smith
źródło
źródło
sudo apt-get install isc-dhcp-client
po skorzystaniusudo dhclient -4 -v eth0
z internetu.sudo ifup -v eth0
połączenia z dhclient nie powiodły się i zamiast tego pokazały informacje o użyciu.Odpowiedzi:
Raspbian Jessie nie ma już pliku o nazwie
/etc/sysctl.d
- jest to teraz folder o tej samej nazwie.Zgodnie z plikiem read-me w tym samym folderze, w
README.sysctl
zasadzie mówi, że każdy.conf
plik zostanie wczytany podczas rozruchu i przetworzony. Każda legalna nazwa pliku będzie działać, ale zasugerowalilocal.conf
, więc tego właśnie użyłem.Utworzyłem
/etc/sysctl.d/local.conf
i dodałem jedną linię z innych odpowiedzi:To wydaje się działać dobrze.
źródło
.d
w/etc
nim nigdy nie było niczym innym jak katalogiem na początek. Nie wiem, czy odpowiedź Joe Platano dotyczy literówki lub czy to rzeczywiście zadziała, jakoś wątpię w to (chociaż wydaje się, że jest inna odpowiedź potwierdzająca, że tak będzie).możesz wstawić linię do sysctl, aby wyłączyć ipv6.
to zadziała po następnym restarcie.
źródło
W Raspbian Jessie / Jessie Lite po prostu edytuj
/etc/sysctl.conf
plik i dodaj przełącznik, aby wyłączyć ipv6 w następujący sposób:Wpisz tekst:
Zapisz plik
Ctrl-O
,Ctrl-X
a ponowne uruchomienie RPI.źródło
sudo nano /etc/sysctl.conf
dodaj następujące wiersze, aby wyłączyć ipv6:
uruchom,
sudo sysctl -p
aby zadziałać lub po prostu uruchom ponownie.źródło
najłatwiejszym sposobem, aby uzyskać adres IPv4 dla interfejsu, była zmiana / etc / network / interfaces: ustawienie instrukcji na dhcp ... która również daje ci adres IPv4 na eth0 ... prawdopodobnie tylko włamanie, ale raj ' Znalazłem coś lepszego jeszcze ...
źródło
dhcp
(chyba że użytkownik naprawdę się z nią bawił), a to uniemożliwiłoby obsługę GUI WiFi.Łączenie, poprawianie i dodawanie do poprzednich odpowiedzi:
Aby naprawić interfejs (eth lub wlan), który pokazuje tylko adres inet6 (IPV6) i brak adresu inet (IPV4), możesz dołączyć plik konfiguracyjny, aby wyłączyć przypisanie inet6 (IPV6), aby wszystkie interfejsy otrzymywały inet (IPV4) adres. Jeśli plik konfiguracyjny zostanie następnie ponownie usunięty, interfejsy otrzymają ZARÓWNO adres inet (IPV4) i inet6 (IPV6), tj. Powrót do zwykłego stanu domyślnego.
Aby dodać plik:
i dodaj pojedynczą linię:
Zapisz za pomocą Ctrl-O, Y, [Return]. Uruchom ponownie i zaloguj się ponownie.
Sprawdź adresy za pomocą
Usuń plik konfiguracyjny i uruchom ponownie:
Sprawdź ponownie za pomocą ifconfig:
Zobacz adresy inet (IPV4) i inet6 (IPV6) dla wszystkich interfejsów:
I znów mogę SSH do mojego Pi Zero za pomocą eth0 lub wlan0, oba używając adresu IPV4 lub IPV6.
źródło
Uaktualniłem mój Raspberry Pi do Stretch i nie byłem w stanie odnieść sukcesu przy żadnej odmianie
net.ipv6.conf.all.disable_ipv6=1
odpowiedzi.Uruchomiony ręcznie,
sudo dhclient -4 -v eth0
aby przywrócić połączenie z siecią / Internetem, jednak, jak stwierdzono w oryginalnym plakacie, nie przetrwa ponownego uruchomienia.Zauważyłem, że to
sudo ifup -v eth0
wywołaniedhclient
, ale zawiodło i zamiast poprawnie działać, wyświetlało informacje o użyciudhclient
polecenia.Obejściem wydaje się być odejście od
dhclient
instalacji i instalowanie jejisc-dhcp-client
. Po ponownym uruchomieniu moja łączność była automatycznie dostępna po zainstalowaniu tego pakietu.źródło
Mam ten sam problem i wypróbowałem poniższe rozwiązanie, działa to dobrze po ponownym uruchomieniu mojego Pi.
rodzaj
oszczędzaj z
^O
dosysctl.d
Teraz widzę mój adres IP4 na ekranie rozruchowym.
źródło