【发布时间】:2012-10-30 14:58:01
【问题描述】:
我正在寻找一个命令行解决方案,它将返回本地主机的主要(第一个)IP 地址,而不是 127.0.0.1
该解决方案至少适用于 Linux(Debian 和 RedHat)和 OS X 10.7+
我知道ifconfig 在这两个平台上都可用,但其输出在这些平台之间并不一致。
【问题讨论】:
-
你只想要你的机器本地网络IP吗?即 192.168.0.12
-
是的,本地 IP,第一个,因为它可以有多个,但我可以忍受一个列表。目前我很高兴只支持 IPv4 地址并忽略 IPv6,因为只希望它生成哈希。
-
如何定义“主要”?如果您正在考虑“与我的默认路由位于同一子网的 IP 地址”,则需要为此进行一些编程。但是如果机器没有默认路由,但仍然有 >1 个 IP 地址怎么办?
-
试试
curl -4 ifconfig.co。它会回答你的外部 IP4 地址。 -
这怎么跑题了?