インターネットに接続するために使用するイーサネットアダプタのアダプタ名とデフォルトゲートウェイを見つける必要があります。イーサネット接続のネットワークアダプタ名を見つける
netstat -rn
でゲートウェイを取得できますが、アダプタ名に問題があります。
私はjavaを使用しており、Windowsシステム用にipconfig
コマンドを実行し、結果を解析しています。それは私がデフォルトゲートウェイと一致し、それのために、文字列「ローカルエリア接続」を解析したいことができ
Ethernet adapter Local Area Connection: Connection-specific DNS Suffix . : customer.service.provider.lan Link-local IPv6 Address . . . . . : fb80::7d2b:98aa:506:685%10 IPv4 Address. . . . . . . . . . . : 10.65.2.21 Subnet Mask . . . . . . . . . . . : 255.255.192.0 Default Gateway . . . . . . . . . : 10.65.0.1
この形式でネットワークアダプタの名前を返します。英語のロケールでは、 "adapter"という単語を探して ":"まで解析することができます。問題は、英語とは異なるロケールを持つコンピュータ上にあり、「アダプタ」は他のものと呼ばれています。どのようにしてネットワークアダプタ名を確実に取得できますか?
私はAPI呼び出し 'NetworkInterface.getName()'を試しましたが、アダプタ名の代わりに "eth0"を返します – siamii