2009-03-31 10 views

Respuesta

1

intentar el comando ifconfig .

+1

Usando 'ifconfig' como lo haría en Linux solo imprime el archivo de ayuda. – jww

38

Si usted es un usuario normal (es decir, no 'raíz') ifconfig no está en su camino, pero es el comando que desea.

Más específicamente: /usr/sbin/ifconfig -a

+1

Por supuesto, puede haber muchas interfaces en la caja, cada una con su propia IP. – chris

+0

Claro. Por lo general, tendrá al menos dos: el bucle de retorno local (lo0) y una o más conexiones de Ethernet (en mi máquina, ce0). – Andrew

+0

'-a' Aplique el comando a todas las interfaces de la familia de direcciones especificada. Si no se proporciona ninguna familia de direcciones, ya sea en la línea de comandos o mediante/etc/default/inet_type, se seleccionarán todas las familias de direcciones. http://docs.oracle.com/cd/E19253-01/816-5166/6mbb1kq31/ –

5

El siguiente funcionó bastante bien para mí:

ping -s my_host_name 
0
/usr/sbin/host `hostname` 

debe hacer el truco. Hay que tener en cuenta que es una configuración bastante común para un cuadro de Solaris disponer de varias direcciones IP, aunque, en cuyo caso

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

ellos una lista de todos

3

nombre de host y uname le dará el nombre del host . Luego use nslookup para traducir eso a una dirección IP.

7
/usr/sbin/ifconfig -a | awk 'BEGIN { count=0; } { if ($1 ~ /inet/) { count++; if(count==2) { print $2; } } }' 

Esto mostrará la dirección IP exacta de la máquina

5

El siguiente script da un resultado tabular agradable de interfaces y direcciones IP (con exclusión de la interfaz de bucle invertido) Se ha probado en una caja de 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 
2

Hay también:

getent $HOSTNAME 

o posiblemente:

getent `uname -n` 

En Solaris 11 ifconfig la comando se considera legado y está siendo sustituido por ipadm

ipadm show-addr 

mostrará las direcciones IP en el sistema para Solaris 11 y posteriores.

+0

El comando * getent * toma una base de datos como argumento. Quizás quisiste decir 'getent hosts $ HOSTNAME' o' getent hosts \ 'uname -n \' ' –

Cuestiones relacionadas