Tidak dapat menambahkan rute statis: SIOADDRT: Jaringan tidak dapat dijangkau


15

Saya telah membenturkan kepala saya ke dinding selama beberapa hari mencoba mencari tahu ini: Ifconfig saya adalah:

eth0      Link encap:Ethernet  HWaddr 00:50:56:BB:XX:XX
          inet addr:192.168.36.132  Bcast:192.168.37.255  Mask:255.255.254.0

eth1      Link encap:Ethernet  HWaddr 00:50:56:BB:XX:XX
          inet addr:116.xx.xx.xx    Bcast:116.xx.xx.xx    Mask:255.255.255.192

Ketika saya mencoba dan menambahkan rute statis untuk keluar dari eth0, saya mendapatkan kesalahan berikut:

servername-test:/ # route add -net 10.248.12.0 netmask 255.255.255.240 gw 192.168.36.254 dev eth0 
SIOCADDRT: Network is unreachable

Gateway Default saya adalah:

servername-test:~ # netstat -anr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
116.xx.xx.xx    0.0.0.0         255.255.255.192 U         0 0          0 eth1
192.168.238.0   192.168.36.254  255.255.255.0   UG        0 0          0 eth0
192.168.239.0   192.168.36.254  255.255.255.0   UG        0 0          0 eth0
192.168.36.0    192.168.36.254  255.255.254.0   UG        0 0          0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 eth0
127.0.0.0       0.0.0.0         255.0.0.0       U         0 0          0 lo
0.0.0.0         116.xx.xx.xx    0.0.0.0         UG        0 0          0 eth1

ip route list keluaran

116.66.240.64/26 dev eth1 proto kernel scope link src 116.xx.xx.xx 
192.168.238.0/24 via 192.168.36.254 dev eth0 
192.168.239.0/24 via 192.168.36.254 dev eth0 
192.168.36.0/23 via 192.168.36.254 dev eth0
169.254.0.0/16 dev eth0 scope link 
127.0.0.0/8 dev lo scope link 
default via 116.xx.xx.xx dev eth1

Bisakah Anda menambahkan output /sbin/ip addrdan /sbin/ip route? Ini lebih berguna untuk debugging daripada ifconfig dan netstat.
daff

ip route:116.66.240.64/26 dev eth1 proto kernel scope link src 116.xx.xx.xx 192.168.238.0/24 via 192.168.36.254 dev eth0 192.168.239.0/24 via 192.168.36.254 dev eth0 192.168.36.0/23 via 192.168.36.254 dev eth0 169.254.0.0/16 dev eth0 scope link 127.0.0.0/8 dev lo scope link default via 116.xx.xx.xx dev eth1
AnonPoster

2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:50:56:xx:xx:xx brd ff:ff:ff:ff:ff:ff inet 192.168.36.132/23 brd 192.168.37.255 scope global eth0 inet6 fe80::xxx:xxx:xxx:xxx/64 scope link valid_lft forever preferred_lft forever 3: eth1: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:50:56:xx:xx:xx brd ff:ff:ff:ff:ff:ff inet 116.xx.xx.xx/26 brd 116.xx.xx.xx scope global eth1 inet6 fe80::xxx:xxx:xxx:xxx/64 scope link valid_lft forever preferred_lft forever
AnonPoster

Maksud saya silakan edit posting asli Anda dan sertakan informasi yang saya minta. Menempelkan output ke komentar membuatnya sepenuhnya tidak dapat dibaca.
daff

saya juga menghadapi masalah yang sama dengan server HPUX saya sambil menambahkan rute default karena saya tidak dapat mengakses server yang tersedia di luar jaringan saya. jadi saya mendapat perintah yang benar untuk menambahkan default dan untuk memeriksa tabel routing di hpux di sini Anda juga dapat mencoba, saya harap ini dapat membantu Anda untuk menyelesaikan masalah Anda juga :)

Jawaban:


16

Anda belum menyatakan 192.168.36.0/23tautan lokal, meskipun faktanya Anda memiliki alamat yang ditetapkan untuknya, tidak ada rute-tautan lokal yang muncul untuk dicantumkan dalam rute Anda.

192.168.36.0    192.168.36.254  255.255.254.0   UG        0 0          0 eth0
192.168.36.0/23 via 192.168.36.254 dev eth0

Sebaliknya yang dideklarasikan 192.168.36.0/23harus diteruskan ke gateway 192.168.36.254yang secara teknis sesuai dengan sisa tabel routing tampaknya bukan tetangga (kernel tidak tahu bagaimana menuju ke 192.168.36.254).

Seharusnya tidak ada gateway yang ditetapkan 192.168.36.0/23karena menurut alamat IP Anda 192.168.36.132/23itu mungkin dimaksudkan sebagai jangkauan link-lokal (tetangga langsung responsif melalui ARP).

Anda seharusnya memiliki entri seperti ini sebagai gantinya:

192.168.36.0    0.0.0.0  255.255.254.0   U        0 0          0 eth0
192.168.36.0/23 dev eth0 scope link

Untuk memperbaikinya, Anda perlu menghapus deklarasi gateway untuk 192.168.36.0/23dan mengganti dengan entri seperti:

ip route add 192.168.36.0/23 dev eth0

Ini masalahnya! Saya tidak tahu apa yang menyebabkannya. Di suatu tempat di server ini alamat ip dinyatakan salah, meskipun saya tidak bisa melihat di mana.
AnonPoster

0

Jika demikian, lupakan baris perintah, tambahkan saja entri file Ethernet secara langsung dan 'restart jaringan layanan'. Itu bekerja! Saya merasa komputer konyol, karena membuat saya jengkel dulu - lalu rute yang sama berfungsi dengan baik sambil menambahkan dengan paksa ke dalam file.


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.