grepで正規表現を用いてIPアドレス・MACアドレスを抽出する

ネットワーク回りのログや調査をしていると、IPアドレスやMACアドレスだけをgrepで抽出したいことがある。
その場合は、それぞれ以下のようにgrepを実行するとよい。

IPアドレス

grep -E '([1-2]?[0-9]{0,2}\.){3,3}[1-2]?[0-9]{0,2}'

[ssh-user@BS-PUB-CENT7-01 .ssh]$ echo IPAddress:255.255.333.111 | grep -E '([1-2]?[0-9]{0,2}\.){3,3}[1-2]?[0-9]{0,2}'
[ssh-user@BS-PUB-CENT7-01 .ssh]$ echo IPAddress:192.168.0.1 | grep -E '([1-2]?[0-9]{0,2}\.){3,3}[1-2]?[0-9]{0,2}'
IPAddress:192.168.0.1
[ssh-user@BS-PUB-CENT7-01 .ssh]$ echo IPAddress:192.168.100.243 | grep -E '([1-2]?[0-9]{0,2}\.){3,3}[1-2]?[0-9]{0,2}'
IPAddress:192.168.100.243
[ssh-user@BS-PUB-CENT7-01 .ssh]$ ip addr | grep -E '([1-2]?[0-9]{0,2}\.){3,3}[1-2]?[0-9]{0,2}'
    inet 127.0.0.1/8 scope host lo
    inet 172.XXX.XXX.XXX/24 brd 172.XXX.XXX.255 scope global eth0
    inet 172.XXX.XXX.XXX/24 brd 172.XXX.XXX.255 scope global eth1

MACアドレス

grep -i '[0-9A-F]\{2\}\(:[0-9A-F]\{2\}\)\{5\}'

blacknon@BS-PUB-UBUNTU-01:~$ ifconfig | grep -i '[0-9A-F]\{2\}\(:[0-9A-F]\{2\}\)\{5\}'
eth0      Link encap:イーサネット  ハードウェアアドレス 62:35:64:64:61:31
eth1      Link encap:イーサネット  ハードウェアアドレス 32:63:31:63:38:61
blacknon@BS-PUB-UBUNTU-01:~$ ip addr | grep -i '[0-9A-F]\{2\}\(:[0-9A-F]\{2\}\)\{5\}'
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    link/ether 62:35:64:64:61:31 brd ff:ff:ff:ff:ff:ff
    link/ether 32:63:31:63:38:61 brd ff:ff:ff:ff:ff:ff