"IP route get" zeigt die falsche Quell-IP-Adresse an

8

Ich habe eine Maschine mit einer Schnittstelle, die zwei IP-Adressen hat:

inet 192.168.1.15/32 scope global eth0
inet 10.10.118.45/24 brd 10.10.118.255 scope global eth0:hosts4

Wenn ich zum Beispiel ausführe ip -s route get 8.8.8.8, hat das Ausgangspaket dementsprechend eine Quell-IP-Adresse 10.10.118.45:

8.8.8.8 via 10.10.118.254 dev eth0  src 10.10.118.45 
    cache  users 1 used 1

Wenn ich zum Beispiel pingoder SSHzu 8.8.8.8, dann ist Quell-IP 192.168.1.15:

15:19:38.092508 IP 192.168.1.15 > 8.8.8.8: ICMP echo request, id 9135, seq 2, length 64
15:19:38.097962 IP 8.8.8.8 > 192.168.1.15: ICMP echo reply, id 9135, seq 2, length 64

Was ist der Grund, warum in diesem Fall ip route getnicht die richtige Quell-IP-Adresse angezeigt wird?

Martin
quelle
1
Was ist die Ausgabe von ip rule list? Und von was wird für jede aufgelistete Tabelle ausgegeben ip route list table $table?
Jesusaur
1
Was ip route show to match 8.8.8.8sagt das aus?
Zeppelin
2
@Martin ip route getdruckt das Ergebnis des Routing-Auswahlalgorithmus und die Quelladresse aus dem srcFeld des entsprechenden Routing-Tabelleneintrags. Eine Anwendung kann jedoch eine Adresse an den Socket binden, der dann stattdessen als Quelladresse in den IP-Paketen verwendet wird. Siehe Auswahl der Quelladresse . Vielleicht macht Ihr Ping-Programm das? (Es gibt mehrere Ping-Programme; aus welchem ​​Paket gehört Ihnen?)
Johan Myréen

Antworten:

1

Ein Computer kann nur ein Standard-Gateway haben. Mit ping -i können Sie auswählen, von welcher Schnittstelle ein Paket stammen soll. Aus den von Ihnen angegebenen Informationen geht hervor, dass Ihre Standard-IP 192.168.1.15 lautet. 10.10.118.45 scheint ein Alias ​​zu sein. Überprüfen Sie Ihre /etc/networks, /etc/sysconfig/networksowie die Schnittstellenkonfiguration im Inneren/etc/network-scripts/ifcfg-*

Hier ist eine Beispielausgabe einer ähnlichen Konfiguration.

[root@cp-rc ~]# ip route show
default via 192.185.130.1 dev eth0 proto static metric 100
10.1.1.0/24 dev eth1 proto kernel scope link src 10.1.1.9 metric 100
192.185.130.0/24 dev eth0 proto kernel scope link src 192.185.130.90 metric 100
[root@cp-rc ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.185.130.1   0.0.0.0         UG    100    0        0 eth0
10.1.1.0        0.0.0.0         255.255.255.0   U     100    0        0 eth1
192.185.130.0   0.0.0.0         255.255.255.0   U     100    0        0 eth0
digital_chocolate
quelle
Willkommen bei U & L. Bitte lesen Sie die Tour , sie enthält einige nützliche Informationen. Wenn Sie eine mehrzeilige Programmausgabe (oder Code) haben, wählen Sie die Zeilen aus und klicken Sie dann auf, {}um besser lesbaren Text zu erhalten.
Anthon
0

Vielleicht ist es möglich, dass Ihre 10.10.118.45/24DHCP-Adresse ist? Sie können versuchen, die statische Adresse zu entfernen

klaypez
quelle