Ich habe 3 Netzwerkkarten, 1 LAN (verkabelt), 1 drahtlose Netzwerkkarte und 1 ist drahtlos USB
Wie pinge ich von einer bestimmten Netzwerkkarte?
& Wie verwende ich eine bestimmte Netzwerkkarte für eine bestimmte Anwendung?
Beispiel
i want to ping google from wlan1
Beispiel für eine bestimmte Anwendung
i want to use firefox or transmission from wan1
Lan ip 192.168.0.2> Richtig funktionieren pin -I wlan1 google.com
route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0
172.16.221.0 0.0.0.0 255.255.255.0 U 0 0 0 vmnet8
192.168.0.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0
192.168.0.0 0.0.0.0 255.255.255.0 U 2 0 0 wlan1
192.168.48.0 0.0.0.0 255.255.255.0 U 0 0 0 vmnet1
one @ onezero: ~ $ ip route
default via 192.168.0.1 dev eth0 proto static
169.254.0.0/16 dev eth0 scope link metric 1000
172.16.221.0/24 dev vmnet8 proto kernel scope link src 172.16.221.1
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.2 metric 1
192.168.0.0/24 dev wlan1 proto kernel scope link src 192.168.0.3 metric 2
192.168.48.0/24 dev vmnet1 proto kernel scope link src 192.168.48.1
@ Khaled
one@onezero:~$ ping -S 192.168.0.2 hotmail.com
PING hotmail.com (65.55.72.135) 56(84) bytes of data.
64 bytes from origin.sn131w.snt131.mail.live.com (65.55.72.135): icmp_req=1 ttl=236 time=391 ms
64 bytes from origin.sn131w.snt131.mail.live.com (65.55.72.135): icmp_req=2 ttl=236 time=296 ms
64 bytes from origin.sn131w.snt131.mail.live.com (65.55.72.135): icmp_req=3 ttl=236 time=393 ms
64 bytes from origin.sn131w.snt131.mail.live.com (65.55.72.135): icmp_req=4 ttl=236 time=352 ms
ping -S 192.168.0.3 hotmail.com
PING hotmail.com (65.55.72.183) 56(84) bytes of data.
64 bytes from origin.sn134w.snt134.mail.live.com (65.55.72.183): icmp_req=1 ttl=236 time=312 ms
64 bytes from origin.sn134w.snt134.mail.live.com (65.55.72.183): icmp_req=2 ttl=236 time=457 ms
64 bytes from origin.sn134w.snt134.mail.live.com (65.55.72.183): icmp_req=3 ttl=236 time=298 ms
64 bytes from origin.sn134w.snt134.mail.live.com (65.55.72.183): icmp_req=5 ttl=236 time=330 ms
64 bytes from origin.sn134w.snt134.mail.live.com (65.55.72.183): icmp_req=6 ttl=236 time=300 ms
Nun zum Schluss das Anwendungsproblem
networking
route
Eine Null
quelle
quelle
Antworten:
Wenn Sie sich das Ping-Handbuch ansehen
man ping
, können Sie lesen:quelle
Überprüfen Sie Ihre Routing-Tabelle.
Ihre wlan1-Schnittstelle weiß nur, wie Sie das Netzwerk 192.168.0.0 erreichen. Sie haben auch wlan1 und eth0 im selben Subnetz, was zu Problemen führen kann. Sie müssen der Routing-Tabelle eine Route für alle Ziele hinzufügen, die Sie auf Ihrer WLAN-Schnittstelle erreichen möchten. Beispielsweise
Beachten Sie, dass Sie dadurch nicht nach Anwendung routen können. Dazu müssen Sie das Richtlinienrouting mit so etwas wie konfigurieren.
iptables -m owner --uid-owner
Derping -S src_ip dest_ip
Befehl sendet das Paket tatsächlich mit einer Quelle Ihrer wlan1-IP-Adresse aus, leitet das Paket dann aber eth0 weiter, da der nächste Hop eth0 in der Routing-Tabelle ist. Am besten platzieren Sie die Schnittstellen wlan1 und eth0 in separaten Subnetzen.quelle
Was Ping (8) von BSD betrifft, können Sie den
-S
Ping-Schalter verwenden, um Ping von einer bestimmten Schnittstelle aus zu simulieren:Das Bewusstsein auf Anwendungsebene für Netzwerkschnittstellen (IP-Adressen) ist in gewissem Maße möglich, wenn wir unterschiedliche Gateways für unterschiedliche Schnittstellen angeben oder Datenverkehr je nach Port oder anderem Kriterium über Firewall-Regeln umleiten ... z. Wenn Sie Firefox verwenden, um nur eine Verbindung zu 80 Ports herzustellen, können Sie in iptables die SNAT-Regel angeben, um eine Verbindung über Ihre angegebene IP-Adresse herzustellen, daher die gewünschte Schnittstelle
quelle
-S
konfiguriert der Socket-Sendepuffer.