どのアプリケーションがどのネットワークインターフェイスを使用しているかを確認できますか?
たとえば、Wi-Fi接続とLANケーブルがある場合、「skype:eth0」または「google chrome:wlan0」への明確な答えを得る方法はありますか?
ベストアンサー1
私の考えでは、wire-sharkまたはtcpdumpを使用してパケットをキャプチャし、アドレスを確認して、どのアプリケーションがどのIP(およびインタフェース)を使用して通信しているかを確認する必要があります。
アップデート1
コマンドでプロセスIDを取得したpgrep
後、次のコマンドを使用できます。
lsof -Pan -p PID -i
例:
pgrep firefox
23533
lsof -Pan -p 23533 -i
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
firefox 23533 iahmad 73u IPv4 1317376 0t0 TCP 137.138.52.207:59237->104.16.116.182:80 (ESTABLISHED)
firefox 23533 iahmad 74u IPv4 1317600 0t0 TCP 137.138.52.207:46223->66.220.158.19:443 (ESTABLISHED)
firefox 23533 iahmad 75u IPv4 1316597 0t0 TCP 137.138.52.207:32950->198.252.206.25:443 (ESTABLISHED)
firefox 23533 iahmad 79u IPv4 1317730 0t0 TCP 137.138.52.207:32989->198.252.206.25:443 (ESTABLISHED)
firefox 23533 iahmad 80u IPv4 1317759 0t0 TCP 137.138.52.207:45125->31.13.71.7:443 (ESTABLISHED)
ip a s
したがって、コマンドを実行すると、137.138.52.207が私のeth0になります。 Firefoxはeth0を使用します。
スカイプの場合:
pgrep skype
24611
次に、次のようにします。
lsof -Pan -p 24611 -i
Skypeのインターフェースも表示されます。