如何给linux给ARP表添加条目

如何给linux给ARP表添加条目,第1张

Liunx添加ARP表方式如下:

[功能]

管理系统的arp缓存。

[描述]

用来管理系统的arp缓存,常用的命令包括:

arp: 显示所有的表项。

arp -d address: 删除一个arp表项。

arp -s address hw_addr: 设置一个arp表项。

常用参数:

-a 使用bsd形式输出。(没有固定的列)

-n 使用数字形式显示ip地址,而不是默认的主机名形式。

-D 不是指定硬件地址而是指定一个网络接口的名称,表项将使用相应接口的MAC地址。一般用来设置ARP代理。

-H type, --hw-type type: 指定检查特定类型的表项,默认type为ether,还有其他类型。

-i If, --device If: 指定设置哪个网络接口上面的arp表项。

-f filename: 作用同'-s',不过它通过文件来指定IP地址和MAC地址的绑定。文件中每行分别是主机和MAC,中间以空格分割。如果没有指定文件名称,则使用/etc/ethers文件。

以下例子中,用主机名称的地方也可以用点分10进制的ip地址来表示。另外输出结果中用"C"表示ARP缓存内容,"M"表示永久性表项,"P"表示公共的表项。

[举例]

*查看arp表:

#arp

Address HWtype HWaddress FlagsMaskIface

hostname1ether 44:37:e6:97:92:16 C eth0

hostname2ether 00:0f:fe:43:28:c5 C eth0

hostname3ether 00:1d:92:e3:d5:ee C eth0

hostname4ether 00:1d:0f:11:f2:a5 C eth0

这里,Flags中的"C"代表此表项目是高速缓存中的内容,高速缓存中的内容过一段时间(一般20分钟)会清空,而"M"则表示静态表项,静态表项的内容不会过一段时间被清空。

*查看arp表,并且用ip显示而不是主机名称:

# arp -n

Address HWtype HWaddress FlagsMaskIface

10.1.10.254 ether 00:1d:92:e3:d5:ee C eth0

10.1.10.253 ether 44:37:e6:9b:2c:53 C eth0

10.1.10.178 ether 00:1b:78:83:d9:85 C eth0

10.1.10.119 ether 00:1d:0f:11:f2:a5 C eth0

这里,对于上面的条目,假设当我们"ping 10.1.10.1"通过之后,arp中会多一条"10.1.10.1"相关的信息。

*查看arp表,显示主机名称和ip:

#arp -a

ns.amazon.esdl.others.com (10.1.10.254) at00:1d:92:e3:d5:ee [ether] on eth0

server.amazon.eadl.others.com (10.1.10.253) at44:37:e6:9b:2c:53 [ether] on eth0

D2-baijh.amazon.esdl.others.com (10.1.10.178) at00:1b:78:83:d9:85 [ether] on eth0

aplab.local (10.1.10.119) at 00:1d:0f:11:f2:a5[ether] on eth0

*添加一对IP和MAC地址的绑定:

# arp -s 10.1.1.1 00:11:22:33:44:55:66

这里,如果网络无法达到,那么会报告错误,具体如下:

root@quietheart:/home/lv-k# arp -s 10.1.1.100:11:22:33:44:55:66

SIOCSARP: Network is unreachable

root@quietheart:/home/lv-k# arp -n

Address HWtype HWaddress FlagsMaskIface

10.1.10.254 ether 00:1d:92:e3:d5:ee C eth0

10.1.10.253 ether 44:37:e6:9b:2c:53 C eth0

10.1.10.178 ether 00:1b:78:83:d9:85 C eth0

10.1.10.119 ether 00:1d:0f:11:f2:a5 C eth0

实际上,如果"arp -s"设置成功之后,会增加一个Flags为"CM"的表项,有些系统静态条目不会因为ARP响应而更新,而高速缓存中的条目会因此而更新。如果想要手工设置没有"M",那么用"temp"选项,例如:"arp -s IP MAC temp"类似的命令,实践发现,如果已经设置过IP了,那么再设置也不会改变其Flags。

*删除一个arp表项:

# arp -d 10.1.10.118

这里,删除之后只是硬件地址没有了,如下:

root@quietheart:~# arp -n

Address HWtype HWaddress FlagsMaskIface

10.1.10.118 ether 00:25:9c:c2:79:90 CMeth0

10.1.10.254 ether 00:1d:92:e3:d5:ee C eth0

root@quietheart:~# arp -d 10.1.10.118

root@quietheart:~# arp -n

Address HWtype HWaddress FlagsMaskIface

10.1.10.118 (incomplete) eth0

10.1.10.254 ether 00:1d:92:e3:d5:ee C

*删除eth0上面的一个arp表项:

# arp -i eth0 -d 10.1.10.118

[其它]

*指定回复的MAC地址:

#/usr/sbin/arp -i eth0 -Ds 10.0.0.2 eth1 pub

当eth0收到IP地址为10.0.0.2的请求时,将会用eth1的MAC地址回答。

例如,双网卡机器运行这条命令:

/usr/sbin/arp -i eth0 -Ds 10.0.0.2 eth1 pub

会多一项:

10.0.0.2 * MPeth0

.首先给虚拟机设置2块网卡:

2、关闭系统中的NetworkManager:

3、编辑文件/etc/modprobe.d/dist.conf添加alias bond0 bonding:

4、修改/etc/sysconfig/network-scripts中的ifcfg-eth0 ifcfg-eth1并创建bond0:

miimon是指多久时间要检查网路一次,单位是ms(毫秒)

mode=0:平衡负载模式,两块网卡都在工作,负载均衡。

mode=1:自动主备模式,其中一块网卡在工作(若eth0断掉)

则自动切换到另一个块网卡(eth1做备份)实验结果:

1、重启网络.service network restart,或者计算机。

2、用另外一台虚拟机ping网卡绑定后的主机。

3、任意ipdown任意网卡,网络通讯均不受影响。

对于网络负载均衡是我们在文件服务器中常用到的,比如把三块网卡,当做一块来用,解决一个IP地址,流量过大,服务器网络压力过大的问题。 对于文件服务器来说,比如NFS或SAMBA文件服务器,没有任何一个管理员会把内部网的文件服务器的IP地址弄很多个来解决网络负载的问题。

如果在内网中,文件服务器为了管理和应用上的方便,大多是用同一个IP地址。对于一个百M的本地网络来说,文件服务器在多个用户同时使用的情况下,网络压力是极大的,特别是SAMABA和NFS服务器。为了解决同一个IP地址,突破流量的限制,毕竟网线和网卡对数据的吞吐量是有限制的。如果在有限的资源的情况下,实现网络负载均衡. 网卡

*** 作步骤: 1.首先给虚拟机设置2块网卡:

添加网卡

2、关闭系统中的NetworkManager:

关闭NetWorkManager服务

3、编辑文件/etc/modprobe.d/dist.conf添加alias bond0 bonding: 编辑网卡绑定配置文件

4、修改/etc/sysconfig/network-scripts中的ifcfg-eth0 ifcfg-eth1并创建bond0: 创建bond0

miimon是指多久时间要检查网路一次,单位是ms(毫秒) mode=0:平衡负载模式,两块网卡都在工作,负载均衡。 mode=1:自动主备模式,其中一块网卡在工作(若eth0断掉)

则自动切换到另一个块网卡(eth1做备份)实验结果:

1、重启网络.service network restart,或者计算机。

2、用另外一台虚拟机ping网卡绑定后的主机。

3、任意ipdown任意网卡,网络通讯均不受影响。使用bind绑定多个网卡

由于服务器上对于可用性的要求都比较高,对于各项功能都会有有冗余设计,比如,磁盘、电源、网卡、甚至服务器本身等等,今天尝试做一下网卡绑定实现网卡的冗余。

网卡绑定的实现表面上看起来有些像是硬盘实现逻辑卷,都是通过创建一个逻辑设备来实现的。实现网卡的绑定其实还挺简单的,相比逻辑卷更容易理解。

首先,我们在/etc/sysconfig/network-scripts/目录下创建一个文件,文件名通常会叫ifcfg-bondxx,除了ifcfg-后面的内容其实都是可以自己定义的,但通常都会写成bind之类的,文件的内容其实和普通网卡配置文件的内容是一样的,就像这样第一行的DEVICE是你给这个逻辑设备指定的名字,这个名字得和文件名的后半部分一样。

第二行是指定IP的获取方式,你也可以写dhcp让他自动获取,如果是自动获取,那么IPADDR、GATEWAY和PREFIX都不需要再填

最后一行是比较重要的,必须得填,这个是绑定网卡的选项,mode代表绑定网卡的工作模式,miimon是一个时间间隔,代表备份网卡每隔多久查询一次工作网卡的工作情况。单位是ms

以上只是第一步,逻辑网卡已经创建好了,下面就要指定那些网卡属于这个逻辑网卡了。也很简单,只要把你想加入这个逻辑网卡的物理网卡的配置文件稍微修改一下就可以了。就像这样


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11638289.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存