TeTiGt schrieb:
Ich frage mich nur wie das ganze IP Routing funktioniert wenn auf einem Rechner ein server läuft, der selbst eine eigene IP Adresse hat. Woher weiß der Rechner der eine Anfrage an den Srver stellt, wo das Paket hinsoll? D.h das Paket müsste erst an den Rechner und dann an den Server geschickt werden, ist das richtig?
Der Rechner weiß es aus seinen _definierten_ Routen und (... wenn die Interfaces/NICs ARPable sind,) aus seinem arp- bzw. neighbor-cache. Siehe z. B. auf dem Rechner und auf dem Server, die Ausgaben von:
ip a
ip r
ip n s
Testen kannst Du mit z. B.:
ip r g <destination-IP-Adresse>
Beispiel (mit einem Interface das nicht ARPable ist):
:~$ ip r g 192.168.22.15
192.168.22.15 dev wg0 src 192.168.22.14 uid 1000
cache
EDIT:
Z. B. ein Ping im W/LAN auf eine IP-Adresse die nicht zugewiesen ist (... d. h. Destination Host Unreachable, aber zuständig für das Routing ist eine vorhandene definierte Route, so dass die default route dafür nicht zuständig ist bzw. nicht benutzt wird):
:~$ ping -c 1 192.168.178.42
PING 192.168.178.42 (192.168.178.42) 56(84) bytes of data.
From 192.168.178.4 icmp_seq=1 Destination Host Unreachable
--- 192.168.178.42 ping statistics ---
1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
Der source-Host hat diese IP-Adresse (+ MAC-Adresse) nicht in seinem arp-cache und startet deshalb sofort ein arp-request (als broadcast) ins W/LAN (Subnetz):
:~# tcpdump -c 10 -vvveni eth0 arp and host 192.168.178.42
tcpdump: listening on eth0, link-type EN10MB (Ethernet), snapshot length 262144 bytes
10:03:55.440169 00:16:d3:b6:b9:a2 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 42: Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.178.42 tell 192.168.178.4, length 28
10:03:56.467990 00:16:d3:b6:b9:a2 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 42: Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.178.42 tell 192.168.178.4, length 28
10:03:57.491977 00:16:d3:b6:b9:a2 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 42: Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.178.42 tell 192.168.178.4, length 28
Er bekommt aber kein arp-reply, weil diese IP-Adresse nicht zugewiesen ist bzw. keiner bekannten MAC-Adresse zugeordnet ist.