我需要找到用于连接互联网的以太网适配器的适配器名称和默认网关。
我可以使用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
我可以匹配默认网关,并喜欢为其解析字符串“Local Area Connection”。在英语语言环境中,我可以查找单词“adapter”并解析名称直到“:”。问题出在具有不同于英语的语言环境的计算机上,“适配器”被称为其他内容。如何可靠地获取网络适配器名称?
答案 0 :(得分:1)
看看这个tutorial:列出网络接口地址 并使用getName()的getDisplayName()实例。请参阅Heer以获取网关:How can I determine the IP of my router/gateway in Java?