Skip to content

通过命令获取IP参考

jeessy2 edited this page Apr 7, 2023 · 6 revisions

Windows使用 powershell 脚本、其它使用 bash 脚本

在Linux系统中获取网卡eth1的IPv6地址

ip -6 addr show eth1

获取局域网中的其它设备IPv6地址

其它设备需要支持EUI-64(IPv6后半部分包含ff:fe)

  • Linux
ip -6 route | awk '{print $1}' | awk '/240:?/' | awk -F::/ '{print $1 ":suffix of other mac"}'
  • Windows
Get-NetRoute -AddressFamily IPv6 | Where-Object { $_.DestinationPrefix.StartsWith("240") -and $_.DestinationPrefix.endsWith("/64") } | ForEach-Object { ($_.DestinationPrefix -split '::/')[0] + ":suffix of other mac" }

Linux 仅获取纯公网 IPv6 地址

ip -6 addr | grep inet6 | awk -F '[ \t]+|/' '$3 == "::1" { next;} $3 ~ /^fe80::/ { next;} /inet6/ {print $3}'

Mac 仅获取纯公网 IPv6 地址

ifconfig | grep inet6 | awk -F '[ \t]+|/' '$3 == "::1" { next;} $3 ~ /^fe80::/ { next;} /inet6/ {print $3}'

在Windows中获取IPv6地址

ipconfig | findstr IPv6