Dengan asumsi Anda bekerja dengan linux (raspian, debian, dll ...):
Anda mengajukan dua pertanyaan berbeda, Pertama saya akan menjawab pertanyaan judul:
Paksa Raspberry untuk mendapatkan internet dari jaringan tertentu
Saya akan mengunci kata "jaringan" Anda (tidak seperti "antarmuka") dan menjawabnya dengan pengertian IP murni:
Jika Anda memiliki beberapa koneksi yang dapat menyediakan internet, Anda mengontrol yang akan digunakan melalui tabel rute.
Untuk melihat tabel routing yang biasa saya gunakan netstat -rn
( -r
untuk "show routing", -n
untuk "show me number, jangan coba dan lakukan pencarian DNS, yang mungkin hang jika internet saya tidak terkonfigurasi dengan benar"). Contoh yang sangat sederhana akan terlihat seperti ini:
pi@homeServer ~ $ netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.9.1 0.0.0.0 UG 0 0 0 eth0
192.168.9.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
172.20.10.0 0.0.0.0 255.255.255.240 U 0 0 0 wlan0
pi@homeServer ~ $
Garis dalam output yang menunjukkan ke arah mana paket IP akan pergi adalah garis dengan tujuan 0.0.0.0
dan genmask 0.0.0.0
, yang biasanya dikenal sebagai default route
(topeng 0.0.0.0
semua wildcard, itu benar-benar penanda rute default), dan karena saat ini menunjuk ke alamat tertentu dalam kisaran `192.168.9 ', lalu lintas internet akan melalui antarmuka ethernet.
Jika saya ingin mengalihkan internet saya ke jaringan lain saya akan (sebagai root) menggunakan route
perintah, dan dalam hal ini, mengingat bahwa koneksi wifi saya tidak point-to-point saya harus tahu alamat ip dari router yang dapat meneruskan lalu lintas keluar dari jaringan itu (Dalam kasus saya yaitu 172.20.10.1
) jadi saya akan melakukan:
Hapus rute default saat ini
sudo route del default
Tambahkan rute default baru untuk jaringan lain
sudo route add default gw 172.20.10.1
FYI sementara route
apa yang saya gunakan, saya melihat beberapa menganggapnya sudah usang dan sebagai gantinya merekomendasikan menggunakan ip route
perintah, lihat komentar @Fred di bawah ini untuk sintaks. referensi untuk penghentian
Apakah ada cara agar tetap terhubung melalui antarmuka dongle
Sudah lama sejak saya bekerja dengan ppp
dan wvdial
, dan tanpa konfigurasi (atau setidaknya referensi untuk panduan yang Anda ikuti dalam pengaturannya) sangat sulit untuk menebak masalah yang Anda hadapi, tetapi sebagai beberapa ide:
- Apakah koneksi benar-benar turun atau apakah Anda baru saja kehilangan rute default ketika eth0 Anda muncul?
- Periksa ini di keduanya
netstat -rn
dan ifconfig
.
- Apakah ada antarmuka
netstat -rn
? jika demikian, apakah ada rute default ke sana?
- Dalam
ifconfig
melakukan Anda melihat antarmuka untuk dongle (mungkin ppp
)? itu UP
?
- Saya tidak ingat di mana
ppp
/ wvdial
log, tapi itu harus diperiksa. Log itu akan memberi tahu Anda kondisi koneksi, dan harus memberi tahu Anda jika seluruh sistem telah dimatikan karena suatu alasan
- Jika Anda melihat antarmuka, coba
ping
sesuatu (... apa saja ...) di atasnya, dan lihat apakah koneksi muncul.
- Saya tahu
ppp
/ wvdial
combo memiliki beberapa kemampuan koneksi otomatis (tergantung pada konfigurasi)
- Jadi, jika koneksi muncul dengan ping (atau koneksi tetap terjaga sepanjang waktu): bisa jadi rute default (ppp) hilang ketika Anda membuka ethernet.
- Jika ini masalahnya, Anda hanya perlu menambahkan rute default dan seluruh sistem akan kembali online.