0

我想要所有网络统计信息的列表,如网络连接、路由表和一些网络接口。我怎样才能在 Ruby 中做到这一点?

4

1 回答 1

0

我注意到,您也将其标记为 JRuby……您可以使用 Java API 获取一些信息。但不要指望得到完整的路由,因为(netstat给你)最后一个gem(或插件)无论如何都会使用系统调用(至少在Java上没有办法让表跨平台)......

ifaces = java.net.NetworkInterface.getNetworkInterfaces.to_a # all you have
name = ifaces[0].name # name = "number" of interface e.g. "eth0"
ips = ifaces[0].inet_addresses.map { |addr| addr.to_s } # likely IP6/IP4

探索 API:http ://docs.oracle.com/javase/6/docs/api/java/net/NetworkInterface.html

...您可能会发现一些带有一些技巧的“原始”路由内容,但不是全部:

是否可以在java中获取默认网关IP和MAC地址?

Java查找默认网关的网络接口

于 2013-11-11T07:20:59.117 回答