wie man eine bestimmte Netzwerkkarte pingt und verwendet

11

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 Geben Sie hier die Bildbeschreibung ein funktionieren pin -I wlan1 google.com Geben Sie hier die Bildbeschreibung ein

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

Eine Null
quelle
1
Möchten Sie nur die Quelladresse festlegen oder möchten Sie irgendwie einen anderen Netzwerkpfad auswählen? Durch das Festlegen einer Quelladresse wird die ausgewählte Route nicht automatisch geändert und eine bestimmte Schnittstelle beendet.
Zoredache

Antworten:

9

Wenn Sie sich das Ping-Handbuch ansehen man ping, können Sie lesen:

-I interface address
   Set source address to specified interface address. Argument may be numeric IP
   address or name of device.
Khaled
quelle
1
check 2nd pic> ping -I wlan1 google.com
One Zero
Möglicherweise ist der Ping in Ihrer Verbindung blockiert.
Khaled
seine Arbeit an eth0
One Zero
5

Überprüfen Sie Ihre Routing-Tabelle.

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
192.168.0.0     0.0.0.0         255.255.255.0   U     2      0        0 wlan1

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

route add -host 65.55.72.135 gw 192.168.0.1 dev wlan1
ping -I wlan1 65.55.72.135

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 Der ping -S src_ip dest_ipBefehl 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.

resmon6
quelle
4

Was Ping (8) von BSD betrifft, können Sie den -SPing-Schalter verwenden, um Ping von einer bestimmten Schnittstelle aus zu simulieren:

-S src_addr
             Use the following IP address as the source address in outgoing packets.  On hosts
             with more than one IP address, this option can be used to force the source address to
             be something other than the IP address of the interface the probe packet is sent on.
             If the IP address is not one of this machine's interface addresses, an error is
             returned and nothing is sent.

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

Kaji
quelle
Ich habe nicht verstanden, Befehl? ping -S?
One Zero
ping -S your.first.ip.addr hotmail.com & ping -S your.another.ip.addr hotmail.com pingt hotmail.com mit Ihrer verfügbaren unterschiedlichen IP-Adresse. Wenn nicht angegeben, nimmt das Standardprotokoll die Ping-Sonde über das Standard-Gateway
1
Welche Version von Ping verklagen Sie? Auf meinem Ubuntu-System -Skonfiguriert der Socket-Sendepuffer.
Zoredache
ping -V> Ping-Dienstprogramm, iputils-sss20101006
One Zero