Meine Netzwerktopologie:
Mac 192.168.1.4 | Internet - Netcom 192.168.1.1-192.168.1.253 Linux 192.168.2.1-192.168.2.2 Windows
- netcom ist ein NAT-Gateway zum Internet
- netcom hat eine statische Route zu 192.168.2.0/24 über 192.168.1.253
- Mac hat eine statische Route zu 192.168.2.0/24 über 192.168.1.253
- Mac hat ein Standard-GW von 192.168.1.1
- Linux hat standardmäßig den GW 192.168.1.1
- Linux hat Portweiterleitung und deaktivierte Firewall
- Windows hat einen Standard-GW von 192.168.2.1
- Mac kann Windows, Linux und Netcom anpingen
- Linux kann Windows, Mac und Netcom anpingen
- Windows kann Mac und Linux anpingen, ABER NICHT Netcom
- Netcom kann Mac und Linux anpingen, ABER NICHT Windows
zuletzt habe ich tcpdump ausgeführt, während ich versucht habe, Netcom von Windows aus anzupingen (und umgekehrt), und es zeigt, dass die Pakete durch die richtigen Schnittstellen gehen. Irgendeine Idee, was falsch sein könnte?
Ping von Netcom zu Windows zeigt die folgenden Protokolle:
Ping im Netcom:
> ping 192.168.2.2 App: echo 1 > /var/ping_dns_status PING 192.168.2.2 (192.168.2.2): 56 Datenbytes --- 192.168.2.2 Ping-Statistiken --- 4 Pakete gesendet, 0 Pakete empfangen, 100 % Paketverlust
tcpdump unter Linux:
00:03:12.441283 In 18:f1:45:75:2c:24 Ethertyp IPv4 (0x0800), Länge 100: 192.168.1.1 > 192.168.2.2: ICMP-Echoanforderung, ID 5784, Sequenz 0, Länge 64 00:03:12.441341 Ausgang 00:0c:29:0b:03:c3 Ethertyp IPv4 (0x0800), Länge 100: 192.168.1.1 > 192.168.2.2: ICMP-Echoanforderung, ID 5784, Sequenz 0, Länge 64 00:03:12.441829 In 00:0c:29:e9:17:84 Ethertyp IPv4 (0x0800), Länge 100: 192.168.2.2 > 192.168.1.1: ICMP-Echo-Antwort, ID 5784, Sequenz 0, Länge 64 00:03:12.441850 Out 00:0c:29:0b:03:b9 Ethertyp IPv4 (0x0800), Länge 100: 192.168.2.2 > 192.168.1.1: ICMP-Echo-Antwort, ID 5784, Sequenz 0, Länge 64
Wireshark unter Windows:
192.168.1.1 192.168.2.2 ICMP 98 Echo (Ping) Anforderungs-ID=0x1698, Seq=0/0, TTL=63 (Antwort in 2548) 192.168.2.2 192.168.1.1 ICMP 98 Echo (Ping) Antwort-ID=0x1698, Seq=0/0, TTL=128 (Anfrage in 2547)
Antwort1
Auf Linux-Rechnern ist die Paketweiterleitung standardmäßig deaktiviert. Versuchen Sie, die folgenden Befehle auszuführen:
iptables -A WEITER -i eth1 -j AKZEPTIEREN
iptables -A WEITER -o eth1 -j AKZEPTIEREN
(und dieselben beiden Befehle auf anderen Netzwerkschnittstellen anstelle von eth1)
sysctl -w net.ipv4.ip_forward=1
und zu /etc/sysctl.conf hinzufügen
net.ipv4.ip_forward = 0