今天局域网存在arp攻击,两台linux服务器网络存在异常。马上动手处理arp的事情。
1、清除arp缓存:
arp -n|awk '/^[1-9]/{system("arp -d "$1)}'
第二种方式:ip neigh flush dev eth0
2、绑定网关mac到ip
vi /etc/ethers 输入 192.168.0.1 00:22:AA:9B:2F:05
arp -f
再用arp 查看: Flags Mask项变成:CM
方法一:
arp -s 192.168.0.1 00:30:18:a3:15:eb
#只能绑定一个,一般绑定网关。多了就累了。
方法二:
那脚本,如scan_ip_mac.sh
scan_ip_mac.sh eth0 > /etc/ethers
扫描局域网内所有主机的MAC地址,然后保存至/etc/ethers文件。
文件格式为:192.168.0.1 00:22:AA:9B:2F:05
运行 arp -f
读取/etc/ethers文件然后绑定所有ip-mac条目,也可以使用:arp -f filename指定其它文件。
终极方法:
ifconfig eth0 -arp
禁用arp协议,这样任凭多大的arp攻击对我已经无效了。
scan_ip_mac.sh eth0 > /etc/ethers
需要注意这里扫描的是正确的ip-mac条目,以防绑定错误的ip-mac条目。
arp -f
绑定
arping -c 1 192.168.0.1
给目标主机发送一个arp报文,让目标主机缓存你的mac地址。
如果你没有这个命令请安装:aptitude -y install arping
手动使用arping命令发送arp报文只是暂时可以互相通信,因为ip-mac条目有时效。
2、将“arping -c 1 192.168.0.1 &”命令写人cron设置,每10秒执行一次。
arp命令详解:
显示和修改地址解析协议(ARP)使用的“IP 到物理”地址转换表。
ARP -s inet_addr eth_addr [if_addr]
ARP -d inet_addr [if_addr]
ARP -a [inet_addr] [-N if_addr] [-v]
-a 通过询问当前协议数据,显示当前 ARP 项。如果指定 inet_addr,则只显示指定计算机的 IP 地址和物理地址。如果不止一个网络接口使用 ARP,则显示每个 ARP 表的项。
-g 与 -a 相同。
-v 在详细模式下显示当前 ARP 项。所有无效项和环回接口上的项都将显示。
inet_addr 指定 Internet 地址。
-N if_addr 显示 if_addr 指定的网络接口的 ARP 项。
-d 删除 inet_addr 指定的主机。inet_addr 可以是通配符 *,以删除所有主机。
-s 添加主机并且将 Internet 地址 inet_addr与物理地址 eth_addr 相关联。物理地址是用连字符分隔的 6 个十六进制字节。该项是永久的。
eth_addr 指定物理地址。
if_addr 如果存在,此项指定地址转换表应修改的接口的 Internet 地址。如果不存在,则使用第一个适用的接口。
示例:
添加静态项。这个很有用,特别是局域网中中了arp病毒以后
> arp -s 123.253.68.209 00:19:56:6F:87:D2
> arp -a .... 显示 ARP 表。
但是arp -s 设置的静态项在用户登出之后或重起之后会失效,如果想要任何时候都不失效,可以将ip和mac的对应关系写入arp命令默认的配置文件/etc/ethers中
例如:
引用
vi /etc/ethers
192.168.0.1 00:30:18:a3:15:eb
写入之后重起以下网络就好了
1、清除arp缓存:
arp -n|awk '/^[1-9]/{system("arp -d "$1)}'
第二种方式:ip neigh flush dev eth0
2、绑定网关mac到ip
vi /etc/ethers 输入 192.168.0.1 00:22:AA:9B:2F:05
arp -f
再用arp 查看: Flags Mask项变成:CM
方法一:
arp -s 192.168.0.1 00:30:18:a3:15:eb
#只能绑定一个,一般绑定网关。多了就累了。
方法二:
那脚本,如scan_ip_mac.sh
scan_ip_mac.sh eth0 > /etc/ethers
扫描局域网内所有主机的MAC地址,然后保存至/etc/ethers文件。
文件格式为:192.168.0.1 00:22:AA:9B:2F:05
运行 arp -f
读取/etc/ethers文件然后绑定所有ip-mac条目,也可以使用:arp -f filename指定其它文件。
终极方法:
ifconfig eth0 -arp
禁用arp协议,这样任凭多大的arp攻击对我已经无效了。
scan_ip_mac.sh eth0 > /etc/ethers
需要注意这里扫描的是正确的ip-mac条目,以防绑定错误的ip-mac条目。
arp -f
绑定
arping -c 1 192.168.0.1
给目标主机发送一个arp报文,让目标主机缓存你的mac地址。
如果你没有这个命令请安装:aptitude -y install arping
手动使用arping命令发送arp报文只是暂时可以互相通信,因为ip-mac条目有时效。
有两种方法可以长久有效:
2、将“arping -c 1 192.168.0.1 &”命令写人cron设置,每10秒执行一次。
arp命令详解:
显示和修改地址解析协议(ARP)使用的“IP 到物理”地址转换表。
ARP -s inet_addr eth_addr [if_addr]
ARP -d inet_addr [if_addr]
ARP -a [inet_addr] [-N if_addr] [-v]
-a 通过询问当前协议数据,显示当前 ARP 项。如果指定 inet_addr,则只显示指定计算机的 IP 地址和物理地址。如果不止一个网络接口使用 ARP,则显示每个 ARP 表的项。
-g 与 -a 相同。
-v 在详细模式下显示当前 ARP 项。所有无效项和环回接口上的项都将显示。
inet_addr 指定 Internet 地址。
-N if_addr 显示 if_addr 指定的网络接口的 ARP 项。
-d 删除 inet_addr 指定的主机。inet_addr 可以是通配符 *,以删除所有主机。
-s 添加主机并且将 Internet 地址 inet_addr与物理地址 eth_addr 相关联。物理地址是用连字符分隔的 6 个十六进制字节。该项是永久的。
eth_addr 指定物理地址。
if_addr 如果存在,此项指定地址转换表应修改的接口的 Internet 地址。如果不存在,则使用第一个适用的接口。
示例:
添加静态项。这个很有用,特别是局域网中中了arp病毒以后
> arp -s 123.253.68.209 00:19:56:6F:87:D2
> arp -a .... 显示 ARP 表。
但是arp -s 设置的静态项在用户登出之后或重起之后会失效,如果想要任何时候都不失效,可以将ip和mac的对应关系写入arp命令默认的配置文件/etc/ethers中
例如:
引用
vi /etc/ethers
192.168.0.1 00:30:18:a3:15:eb
写入之后重起以下网络就好了