os.networkInterfaces()


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

🌐 Returns an object containing network interfaces that have been assigned a network address.

返回对象上的每个键都标识一个网络接口。相关的值是一个对象数组,每个对象描述一个分配的网络地址。

🌐 Each key on the returned object identifies a network interface. The associated value is an array of objects that each describe an assigned network address.

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

🌐 The properties available on the assigned network address object include:

  • address <string> 分配的 IPv4 或 IPv6 地址
  • netmask <string> IPv4 或 IPv6 网络掩码
  • family <string> 要么是 IPv4,要么是 IPv6
  • mac <string> 网络接口的MAC地址
  • internal <boolean> true 如果网络接口是回环接口或类似无法远程访问的接口;否则为 false
  • scopeid <number> 数值 IPv6 范围 ID(仅在 familyIPv6 时指定)
  • cidr <string> 分配的 IPv4 或 IPv6 地址,带有 CIDR 表示法的路由前缀。如果 netmask 无效,此属性将设置为 null
{
  "lo:": [
    {
      "address:": "127.0.0.1",
      "netmask:": "255.0.0.0",
      "family:": "IPv4",
      "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:": "IPv6",
      "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:": "IPv4",
      "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:": "IPv6",
      "mac:": "01:02:03:0a:0b:0c",
      "scopeid:": 1,
      "internal:": false,
      "cidr:": "fe80::a00:27ff:fe4e:66a1/64"
    }
  ]
}