【发布时间】:2018-04-01 15:19:38
【问题描述】:
我最近遇到了一个奇怪的问题,我的 CentOS 机器(我们称之为服务器)。服务器的 IP 地址为 10.150.39.5。问题是它使用两个 MAC 地址回复 ARP 请求,而最后一个进来的 MAC 地址会中断与服务器的所有通信。
镜像交换机端口上 tcpdump 的输出:
18:02:01.388595 00:00:00:e5:64:32 > 00:00:00:67:1d:ea, ethertype ARP (0x0806), length 60: Request who-has 10.150.39.5 (00:00:00:67:1d:ea) tell 10.150.39.116, length 46
18:02:01.388600 00:00:00:67:1d:ea > 00:00:00:e5:64:32, ethertype ARP (0x0806), length 60: Reply 10.150.39.5 is-at 00:00:00:67:1d:ea, length 46
18:02:01.388743 00:00:00:67:1d:ec > 00:00:00:e5:64:32, ethertype ARP (0x0806), length 60: Reply 10.150.39.5 is-at 00:00:00:67:1d:ec, length 46
最有趣的是当我在服务器 NIC 上进行捕获时 - 我只看到前两个数据包(正常 ARP req 和 ARP resp)。所以我创建了一个网络 SPAN(从服务器连接到其他机器的交换机接口镜像所有流量),在该镜像端口上我看到了我之前粘贴的数据包。
我 100% 确定这不是 MiTM 攻击,因为它是一个连接到接口的物理服务器,并且在我在该端口上实施了端口安全之后(只允许正确的 MAC 进入)问题是走了。所以基本上我不再有这个问题了,但我很想知道这是什么原因。
以下是一些可能对你们试图帮助我的人派上用场的输出:
[root@server ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
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: enp0s25: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:00:00:67:1d:ea brd ff:ff:ff:ff:ff:ff
inet 10.150.39.5/24 brd 10.150.39.255 scope global enp0s25
valid_lft forever preferred_lft forever
inet6 fe80::219:d1ff:fe67:1dea/64 scope link
valid_lft forever preferred_lft forever
3: enp1s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:00:00:e3:ca:82 brd ff:ff:ff:ff:ff:ff
4: enp1s0f1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:00:00:e3:ca:83 brd ff:ff:ff:ff:ff:ff
[root@server ~]# tail -vn +1 /etc/sysconfig/network-scripts/ifcfg-*
==> /etc/sysconfig/network-scripts/ifcfg-enp0s25 <==
TYPE="Ethernet"
BOOTPROTO="static"
UUID="a04fb9bd-0543-4ba6-bd17-72cc3d9f54cc"
DEVICE="enp0s25"
ONBOOT="yes"
IPADDR=10.150.39.5
NETMASK=255.255.255.0
GATEWAY=10.150.39.1
==> /etc/sysconfig/network-scripts/ifcfg-enp1s0f0 <==
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=enp1s0f0
UUID=64e7544d-54b9-40cc-83f0-7e10acbcdeaa
DEVICE=enp1s0f0
ONBOOT=no
==> /etc/sysconfig/network-scripts/ifcfg-enp1s0f1 <==
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=enp1s0f1
UUID=c3085e08-1e14-4098-b77a-b512a2c99e75
DEVICE=enp1s0f1
ONBOOT=no
==> /etc/sysconfig/network-scripts/ifcfg-lo <==
DEVICE=lo
IPADDR=127.0.0.1
NETMASK=255.0.0.0
NETWORK=127.0.0.0
# If you're having problems with gated making 127.0.0.0/8 a martian,
# you can change this to something else (255.255.255.255, for example)
BROADCAST=127.255.255.255
ONBOOT=yes
NAME=loopback
【问题讨论】:
标签: networking centos7 arp