나는 ip
내 컴퓨터의 IP 주소를 얻기 위해 a를 사용합니다. 때로는 20개 이상의 네트워크 인터페이스가 있으면 식별하기가 어려워집니다.
IP가 있는 네트워크 인터페이스만 표시하는 방법이 있습니까? IP 주소가 없는 네트워크 인터페이스는 무시되어야 하며 표시되어서는 안 됩니다.
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 4c:cc:6a:32:42:0b brd ff:ff:ff:ff:ff:ff
inet 10.76.99.232/23 brd 10.76.99.255 scope global noprefixroute dynamic eno1
valid_lft 81438sec preferred_lft 81438sec
inet6 fe80::4cd3:b92f:e2:54c8/64 scope link noprefixroute
valid_lft forever preferred_lft forever
3: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 52:54:00:67:f0:89 brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000
link/ether 52:54:00:67:f0:89 brd ff:ff:ff:ff:ff:ff
5: virbr1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:8e:77:61 brd ff:ff:ff:ff:ff:ff
inet 192.168.100.1/24 brd 192.168.100.255 scope global virbr1
valid_lft forever preferred_lft forever
6: virbr1-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr1 state DOWN group default qlen 1000
link/ether 52:54:00:8e:77:61 brd ff:ff:ff:ff:ff:ff
7: br-251ee4bbddbc: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:59:14:5d:96 brd ff:ff:ff:ff:ff:ff
inet 172.20.0.1/16 brd 172.20.255.255 scope global br-251ee4bbddbc
valid_lft forever preferred_lft forever
inet6 fe80::42:59ff:fe14:5d96/64 scope link
valid_lft forever preferred_lft forever
8: br-7d1010889446: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
link/ether 02:42:e9:35:47:a7 brd ff:ff:ff:ff:ff:ff
inet 172.19.0.1/16 brd 172.19.255.255 scope global br-7d1010889446
valid_lft forever preferred_lft forever
9: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:a2:bf:15:a8 brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
valid_lft forever preferred_lft forever
inet6 fe80::42:a2ff:febf:15a8/64 scope link
valid_lft forever preferred_lft forever
11: veth42032d5@if10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-251ee4bbddbc state UP group default
link/ether 56:1f:89:31:03:02 brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet6 fe80::541f:89ff:fe31:302/64 scope link
valid_lft forever preferred_lft forever
13: veth6b578c7@if12: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default
link/ether da:12:96:51:48:48 brd ff:ff:ff:ff:ff:ff link-netnsid 1
inet6 fe80::d812:96ff:fe51:4848/64 scope link
valid_lft forever preferred_lft forever
15: veth36b9b3b@if14: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-251ee4bbddbc state UP group default
link/ether 9e:89:cb:57:36:67 brd ff:ff:ff:ff:ff:ff link-netnsid 2
inet6 fe80::9c89:cbff:fe57:3667/64 scope link
valid_lft forever preferred_lft forever
34: br-22ddff6ae6ef: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
link/ether 02:42:d7:77:d5:2d brd ff:ff:ff:ff:ff:ff
inet 172.18.0.1/16 brd 172.18.255.255 scope global br-22ddff6ae6ef
valid_lft forever preferred_lft forever
예상 출력(대략):
1. eno1: 10.76.99.232
3. virbr0: 192.168.122.1
5. virbr1: 192.168.100.1
등.
도구를 사용하여 필터링하는 기본 방법을 찾고 있습니다 ip
. 예상되는 결과를 얻기 위해 다른 도구를 사용하는 것도 좋습니다.
답변1
ip -4 -brief address show
IPv4만 표시하도록 지정되었으므로(예: 이더넷이나 IPv6 주소가 아님) IPv4 주소가 있는 인터페이스만 표시하면서 최소한의 주소 정보를 표시합니다.
이 옵션은 최근(2015) iproute2 유틸리티에 추가되었으며 배포판으로 이동하는 데 시간이 걸렸습니다. 예를 들면 다음과 같습니다.
- Debian 9에서는 사용할 수 있지만 Debian 8에서는 사용할 수 없습니다.
- RHEL 7.5에서는 사용할 수 있지만 일부 이전 RHEL 7 릴리스에서는 사용할 수 없습니다.
업스트림 커밋:
출력은 아마도 다음과 같이 시작될 것입니다.
$ ip -4 -brief address show
lo UNKNOWN 127.0.0.1/8
eno1 UP 10.76.99.232/23
virbr0 UP 192.168.122.1/24
virbr1 UP 192.168.100.1/24
...
답변2
ip -o addr show
옵션일 것입니다. 각 IP 주소는 한 줄에 표시되며, IP 주소가 두 개 이상인 인터페이스의 경우 여러 줄이 표시되고 주소가 없는 인터페이스의 경우 줄이 표시되지 않습니다.
읽다 man ip
.