Skonfigurowałem RPi, aby po rozruchu łączył się z kluczem 3G, ustawiając ppp i wvdial na
/etc/network/interfaces
Pi uruchamia się i mam połączenie z Internetem. Doskonały.
Teraz moim problemem jest to, że ilekroć podłączę Pi do mojego komputera za pośrednictwem sieci Ethernet (korzystając z tego samouczka ), połączenie internetowe zostanie utracone. Nawet po odłączeniu od komputera nadal nie można się połączyć, muszę zrestartować komputer, aby mógł ponownie uzyskać połączenie z Internetem.
Czy istnieje sposób, aby Pi mógł pozostawać w kontakcie z Internetem przez interfejs klucza sprzętowego zamiast próbować uzyskać połączenie z moim komputerem?
networking
ethernet
jonathanwiesel
źródło
źródło
Odpowiedzi:
Zakładając, że pracujesz z Linuksem (Raspian, Debian itp.):
Zadajesz dwa różne pytania. Najpierw odpowiem na pytanie tytułowe:
Zmusz Raspberry do uzyskania dostępu do Internetu z określonej sieci
Zamierzam skupić się na twoim słowie „sieć” (w przeciwieństwie do „interfejsu”) i odpowiedzieć na to w czystym IP:
Jeśli masz wiele połączeń, które mogłyby zapewnić dostęp do Internetu, możesz kontrolować, które będą używane za pomocą tabeli tras.
Aby wyświetlić tabelę routingu, której zwykle używam
netstat -rn
(-r
służy do „Pokaż routing”,-n
służy do „pokaż mi numery, nie próbuj wyszukiwać DNS, które mogą się zawiesić, jeśli mój internet nie jest poprawnie skonfigurowany”). Naprawdę prosty przykład wyglądałby tak:Linia w tym wyjściu, która pokazuje, w którą stronę pójdą pakiety IP, to linia z przeznaczeniem
0.0.0.0
i maską genową0.0.0.0
, która jest zwykle znana jakodefault route
(maska złożona z0.0.0.0
symboli wieloznacznych, to tak naprawdę znacznik domyślnej trasy) i ponieważ obecnie wskazuje na konkretny adres z zakresu `192.168.9 ', ruch internetowy będzie przesyłany przez interfejs Ethernet.Jeśli chcę przełączyć internet na inną sieć, chciałbym (jako root) użyć
route
polecenia, aw tym przypadku, biorąc pod uwagę, że moje połączenie Wi-Fi nie jest punkt-punkt, muszę znać adres IP routera, który może przekaż ruch z tej sieci (w moim przypadku172.20.10.1
), więc zrobiłbym:Usuń bieżącą domyślną trasę
Dodaj nową domyślną trasę dla drugiej sieci
Czy istnieje sposób, aby pozostawać w kontakcie poprzez interfejs klucza sprzętowego?
Minęło trochę czasu, odkąd pracowałem z
ppp
iwvdial
, i bez konfiguracji (lub przynajmniej odniesień do przewodników, których użyłeś podczas ich konfigurowania) naprawdę trudno jest zgadnąć, które problemy napotykasz, ale jako kilka pomysłów:netstat -rn
iifconfig
.netstat -rn
? jeśli tak, czy istnieje domyślna droga do niego?ifconfig
widzisz interfejs dla klucza sprzętowego (prawdopodobneppp
)? czy toUP
jestppp
/wvdial
log, ale należy to sprawdzić. Ten dziennik poinformuje Cię o stanie połączenia i powinien poinformować Cię, czy z jakiegoś powodu cały system został zamkniętyping
coś na nim (... cokolwiek ...) i sprawdź, czy połączenie zostanie nawiązane.ppp
/wvdial
combo ma możliwość automatycznego połączenia (w zależności od konfiguracji)źródło
ip route
nie używa tej samej składni. Możesz jednak skopiować i wkleić dane wyjściowe, aby użyć ich jako danych wejściowych. Na przykład, jeśli pokazujedefault via 192.168.9.1 dev eth0
, możesz usunąć tę trasę po prostu wykonującip route del default via 192.168.9.1 dev eth0
. Możesz łatwo użyć danych wyjściowych jako szablonu, aby dodać nowe polecenia, npip route add default via 172.20.10.1 dev wlan0
.