如何确定 Solaris 系统的 IP 地址 [关闭]

Posted

技术标签:

【中文标题】如何确定 Solaris 系统的 IP 地址 [关闭]【英文标题】:How to determine the IP address of a Solaris system [closed] 【发布时间】:2010-10-16 16:22:23 【问题描述】:

当我想知道我登录的 Solaris 机器的 IP 地址时,我想发出什么命令?

【问题讨论】:

觉得这个问题不应该被关闭,如果它得到了22 upvotes140,000 + views...这显然是一个对人们有用的问题 【参考方案1】:

尝试使用ifconfig -a。寻找“inet xxx.xxx.xxx.xxx”,即你的IP地址

【讨论】:

像在 Linux 上一样使用 ifconfig 只会打印帮助文件。【参考方案2】:

如果您是普通用户(即不是“root”)ifconfig 不在您的路径中,但这是您想要的命令。

更具体地说:/usr/sbin/ifconfig -a

【讨论】:

当然,盒子上可能有很多接口,每个接口都有自己的IP。 当然。您通常至少有两个——本地环回 (lo0) 和一个或多个以太网连接(在我的机器上,ce0)。 -a 将该命令应用于指定地址族的所有接口。如果在命令行上或通过 /etc/default/inet_type 未提供地址族,则将选择所有地址族。 docs.oracle.com/cd/E19253-01/816-5166/6mbb1kq31【参考方案3】:

以下对我来说效果很好:

ping -s my_host_name

【讨论】:

【参考方案4】:
/usr/sbin/host `hostname`

应该可以解决问题。请记住,solaris 机器具有多个 IP 地址是一种非常常见的配置,但在这种情况下

 /usr/sbin/ifconfig -a inet | awk '/inet/ print $2'

将全部列出

【讨论】:

【参考方案5】:

hostnameuname 将为您提供主机的名称。然后使用nslookup 将其转换为IP 地址。

【讨论】:

【参考方案6】:
/usr/sbin/ifconfig -a | awk 'BEGIN  count=0;   if ( $1 ~ /inet/ )  count++; if( count==2 )  print $2;   '

这将列出机器的确切 IP 地址

【讨论】:

但如果您有多个,则不是全部【参考方案7】:

下面的 shell 脚本给出了一个很好的接口和 IP 地址的表格结果(不包括环回接口)它已经在 Solaris 机器上测试过

/usr/sbin/ifconfig -a | awk '/flags/ printf $1" " /inet/ print $2' | grep -v lo

ce0: 10.106.106.108
ce0:1: 10.106.106.23
ce0:2: 10.106.106.96
ce1: 10.106.106.109

【讨论】:

【参考方案8】:

还有:

getent $HOSTNAME

或者可能:

getent `uname -n`

在 Solaris 11 上,ifconfig 命令被视为旧命令,正在被 ipadm

取代
ipadm show-addr

将为 Solaris 11 及更高版本显示系统上的 IP 地址。

【讨论】:

getent 命令将数据库作为参数。也许你的意思是getent hosts $HOSTNAMEgetent hosts `uname -n`

以上是关于如何确定 Solaris 系统的 IP 地址 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何解决用固定IP,填入正确的DNS却不能上网

Solaris10 修改主机名和IP地址

Solaris 11的ip地址配置

solaris 小型机 BMC登录方法介绍

配置mysql为主主复制步骤

SSH远程SOLARIS11时被拒绝