Tôi đã có một máy Debian với kịch bản mạng này:
- eth0 - Kết nối Internet qua Bộ định tuyến cục bộ (172.20.1.x)
- ppp0 - Quay số tới mạng không có internet (10.xxx)
Tôi đã đặt pppd để nó sẽ không thêm bất kỳ tuyến mặc định nào vào bảng định tuyến của tôi và bảng định tuyến của tôi trông như thế này sau khi khởi động hệ thống:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.20.1.1 0.0.0.0 UG 0 0 0 eth0
10.64.64.64 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
172.20.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
Với cấu hình này, tôi có thể ping google.com , tuy nhiên tôi không thể truy cập vào bất kỳ máy nào có IP như 10.0.0.1 hoặc 10.0.0.2, v.v.
Cố gắng sửa lỗi này (với kiến thức kém) Tôi đã sửa đổi /etc/network/interfaces
tệp của mình thành:
auto lo
iface lo inet loopback
iface eth0 inet dhcp
auto ppp0
iface ppp0 inet ppp
pre-up sleep 5
provider vfp
post-up /sbin/route add -net 10.0.0.0 netmask 255.0.0.0 gw 10.64.64.64
pre-down /sbin/route del -net 10.0.0.0 netmask 255.0.0.0 gw 10.64.64.64
Nhưng rõ ràng lệnh post-up /sbin/route add -net 10.0.0.0 netmask 255.0.0.0 gw 10.64.64.64
nên thêm tuyến để làm cho nó hoạt động không có hiệu lực. Không có gì thay đổi trên bảng định tuyến.
Tôi đang thiếu gì? / Làm thế nào tôi có thể sửa lỗi này? Cảm ơn bạn ;)
PS: Nếu tôi chạy route add -net 10.0.0.0 netmask 255.0.0.0 gw 10.64.64.64
sau khi hệ thống khởi động, tôi có thể ping cả google.com và 10.0.0.1 từ hệ thống.