【发布时间】:2017-01-25 03:55:46
【问题描述】:
专家,
请帮我编写一个脚本,从给定的 IPv6 地址中查找网络接口名称。
例如:
if "ifconfig" gives the output like:
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:90440 errors:0 dropped:0 overruns:0 frame:0
TX packets:90440 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:10181289 (10.1 MB) TX bytes:10181289 (10.1 MB)
eth0 Link encap:Ethernet HWaddr 00:50:56:bb:9f:9d
inet6 addr: fe80::250:56ff:febb:9f9d/64 Scope:Link
inet6 addr: 2001:111:1111:1111:1000::41/64 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:138859 errors:0 dropped:10 overruns:0 frame:0
TX packets:69332 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:46310896 (46.3 MB) TX bytes:18119186 (18.1 MB)
eth1 Link encap:Ethernet HWaddr 00:50:56:bb:9f:9d
inet6 addr: fe80::250:56ff:febb:9f9d/64 Scope:Link
inet6 addr: 2001:222:2222:2222:1000::41/64 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:138859 errors:0 dropped:10 overruns:0 frame:0
TX packets:69332 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:46310896 (46.3 MB) TX bytes:18119186 (18.1 MB)
给定的 IPv6 地址是:2001:111:1111:1111:1000::41 那么输出应该是“eth0”
提前感谢您的帮助。
谢谢。
【问题讨论】:
-
SO 不是免费的编码服务。您必须尝试自己编写。看起来这应该是一个非常简单的
awk脚本。当您看到Link行时,您将链接名称保存在一个变量中。然后当你匹配地址时,你打印变量。