2009-03-31 45 views

Trả lời

1

Thử ifconfig lệnh.

+1

Sử dụng 'ifconfig' như bạn làm trên Linux chỉ cần in tệp trợ giúp. – jww

38

Nếu bạn là người dùng thông thường (ví dụ: không phải 'root') ifconfig không có trong đường dẫn của bạn, nhưng đó là lệnh bạn muốn.

Cụ thể hơn: /usr/sbin/ifconfig -a

+1

Tất nhiên, có thể có nhiều giao diện trên hộp, mỗi giao diện có IP riêng. – chris

+0

Chắc chắn. Nói chung bạn sẽ có ít nhất hai - vòng lặp cục bộ (lo0) và một hoặc nhiều kết nối ethernet (trên máy của tôi, ce0). – Andrew

+0

'-a' Áp dụng lệnh cho tất cả các giao diện của họ địa chỉ được chỉ định. Nếu không có gia đình địa chỉ được cung cấp, hoặc trên dòng lệnh hoặc bằng phương tiện/etc/default/inet_type, thì tất cả các gia đình địa chỉ sẽ được chọn. http://docs.oracle.com/cd/E19253-01/816-5166/6mbb1kq31/ –

5

Sau đây làm việc khá tốt cho tôi:

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

nên làm các trick. Ghi nhớ rằng đó là một cấu hình khá phổ biến cho một hộp solaris có nhiều địa chỉ IP, tuy nhiên, trong trường hợp này

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

sẽ liệt kê tất cả chúng

3

hostname và uname sẽ cung cấp cho bạn tên của chủ nhà . Sau đó sử dụng nslookup để dịch nó thành địa chỉ IP.

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

này sẽ liệt kê các địa chỉ IP chính xác cho các máy

5

Các kịch bản vỏ sau đưa ra một kết quả bảng tốt đẹp của giao diện và địa chỉ IP (không bao gồm giao diện loopback) Nó đã được thử nghiệm trên một hộp 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

Ngoài ra còn có:

getent $HOSTNAME 

hoặc có thể là:

getent `uname -n` 

Trên Solaris 11 ifconfig lệnh được coi là di sản và đang được thay thế bởi ipadm

ipadm show-addr 

sẽ hiển thị địa chỉ IP trên hệ thống cho Solaris 11 và sau đó.

+0

Lệnh * getent * lấy cơ sở dữ liệu làm đối số. Có lẽ bạn có nghĩa là 'host getent '$ HOSTNAME' hoặc' getent hosts \ 'uname -n \' ' –

Các vấn đề liên quan