当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


Node.js os.networkInterfaces()用法及代码示例

os.networkInterfaces()

历史
版本变化
v18.0.0

family 属性现在返回一个数字而不是字符串。

v0.6.0

添加于:v0.6.0

返回包含已分配网络地址的网络接口的对象。

返回对象上的每个键标识一个网络接口。关联的值是一个对象数组,每个对象说明一个分配的网络地址。

分配的网络地址对象上可用的属性包括:

  • address <string> 分配的 IPv4 或 IPv6 地址
  • netmask <string> IPv4 或 IPv6 网络掩码
  • family <number> 4(用于 IPv4)或 6(用于 IPv6)
  • mac <string> 网络接口的MAC地址
  • internal <boolean> true 如果网络接口是不可远程访问的环回或类似接口;否则false
  • scopeid <number> 数字 IPv6 范围 ID(仅在 family6 时指定)
  • cidr <string> 分配的 IPv4 或 IPv6 地址,其路由前缀采用 CIDR 表示法。如果 netmask 无效,则此属性设置为 null
{
  lo: [
    {
      address: '127.0.0.1',
      netmask: '255.0.0.0',
      family: 4,
      mac: '00:00:00:00:00:00',
      internal: true,
      cidr: '127.0.0.1/8'
    },
    {
      address: '::1',
      netmask: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff',
      family: 6,
      mac: '00:00:00:00:00:00',
      scopeid: 0,
      internal: true,
      cidr: '::1/128'
    }
  ],
  eth0: [
    {
      address: '192.168.1.108',
      netmask: '255.255.255.0',
      family: 4,
      mac: '01:02:03:0a:0b:0c',
      internal: false,
      cidr: '192.168.1.108/24'
    },
    {
      address: 'fe80::a00:27ff:fe4e:66a1',
      netmask: 'ffff:ffff:ffff:ffff::',
      family: 6,
      mac: '01:02:03:0a:0b:0c',
      scopeid: 1,
      internal: false,
      cidr: 'fe80::a00:27ff:fe4e:66a1/64'
    }
  ]
}

相关用法


注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 os.networkInterfaces()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。