什么是终端命令或如何从IP地址中找到网络接口名称(例如en0,en1,en3 en8等)。 我有一个IP地址,需要找到IP分配给macOS中的哪个网络接口。
答案 0 :(得分:0)
我现在不在电脑前,但是像
那样ifconfig | grep -b1 "youriphere" | awk 'NR==1{print $1}'
应该让你进入球场。
答案 1 :(得分:0)
正确的方法是:
route -n get "yourIPhere" | awk '/interface: / {print $2}'
答案 2 :(得分:0)
ip a |grep <ip> |awk '{print $NF}'
#or
ip r |grep <ip> |cut -d " " -f 3
答案 3 :(得分:0)
其他答案大多忽略了一个问题。可能会匹配相似的IP,例如,如果网络接口为 172.16.1.100 ,则IP为 72.16.1.10 也要匹配。
这是我的解决方案:
ifconfig | grep -PB1 "[: ]72.16.1.10[^\d]" | grep -o "^\w*"
or
ifconfig | grep -PB1 "[: ]72.16.1.10[^\d]" | awk -F'[: ]' 'NR==1{print $1}'