1、查看防火墙状态:
sudo ufw status # Ubuntu
2、 检查系统全局广播设置
# 查看是否忽略广播包(0表示接收,1表示忽略)
sysctl net.ipv4.icmp_echo_ignore_broadcasts
# 查看是否允许广播转发(1表示允许)
sysctl net.ipv4.conf.all.bc_forwarding
期望输出:
net.ipv4.icmp_echo_ignore_broadcasts = 0
net.ipv4.conf.all.bc_forwarding = 1
3、 启用全局广播接收
临时启用(重启失效):
# 允许接收广播ping
sudo sysctl -w net.ipv4.icmp_echo_ignore_broadcasts=0
# 启用广播转发
sudo sysctl -w net.ipv4.conf.all.bc_forwarding=1
# 针对特定网卡(如eth0)
sudo sysctl -w net.ipv4.conf.eth0.bc_forwarding=1
永久生效:
编辑/etc/sysctl.conf
,添加:
net.ipv4.icmp_echo_ignore_broadcasts=0
net.ipv4.conf.all.bc_forwarding=1
net.ipv4.conf.eth0.bc_forwarding=1
然后执行:
sudo sysctl -p
4、 监控原始广播包
sudo tcpdump -i any 'udp port 45454 and (dst 255.255.255.255 or dst 192.168.10.255)'