interface-bounding:Linux绑定驱动程序提供了将多个网络接口聚合到单个逻辑绑定接口的方法。逻辑有界接口将只有一个MAC地址,它由原始接口之一限定。 ifconfig
将显示具有相同MAC地址的所有原始接口。如何在Java中的linux界面过程中找到原始MAC地址?
现在,我将在Java中找到每个接口的原始MAC地址。如何?
我已经确认我无法通过NetworkInterface.getInterfaceAddresses()
和NetworkInterface.getSubInterfaces()
任何其他方式找到他们呢?
UPDATE:
边界之前:
后绑定ETH1和ETH2到bound0:
Java代码中显示接口信息:
ALL interfaces:[name:bond0 (bond0), name:eth0 (eth0), name:lo (lo)]
they are [{netIf bond0,host 192.168.122.38,mac 525400F801B9,ip 192.168.122.38}, {netIf eth0,host hatest02,mac 5254008C5B48,ip 192.168.10.38}]
你尝试'NetworkInterface.getHardwareAddress()'如BLOS提到帖子:http://www.mkyong.com/java/how-to-get-mac-address-in-java/? – deterministicFail
是的,我为NetworkInterface.getNetworkInterfaces()返回的每个NetworkInterface做了这个,而我找不到另一个NetworkInterface。 – BlackJoker
你也可以从java调用ifconfig并解析输出 – deterministicFail