linux系统arp绑定,Linux下查看arp静态绑定地址
首先,做两个对比试验:root@janbe root]# arp -a
? (192.168.8.241) at 00:15:58:A2:13: D0 [ether] on eth0
? (192.168.8.1) at 00:15:C5:E1: D1:58 [ether] on eth0
[root@janbe bin]# arp -s 192.168.8.1 00:15:C5:E1: D1:58
[root@janbe bin]# arp -a
? (192.168.8.241) at 00:15:58:A2:13: D0 [ether] on eth0
? (192.168.8.1) at 00:15:C5:E1: D1:58 [ether] PERM on eth0
发现没有?多了一个PERM!!
或者
[root@janbe bin]# cat /proc/net/arp
IP address HW type Flags HW address Mask Device
192.168.8.241 0x1 0x2 00:15:58:A2:13: D0 * eth0
192.168.8.1 0x1 0x6 00:15:C5:E1: D1:58 * eth0
[root@janbe bin]# arp -s 192.168.8.241 00:15:58:A2:13: D0
[root@janbe bin]# cat /proc/net/arp
IP address HW type Flags HW address Mask Device
192.168.8.241 0x1 0x6 00:15:58:A2:13: D0 * eth0
192.168.8.1 0x1 0x6 00:15:C5:E1: D1:58 * eth0发现没有?Flags改变了! 所以我们可以用两种方法找到arp的静态绑定地址:#arp -a | grep PERM 或者#cat /proc/net/arp | grep 0x6 但建议用后者比较快。
利用静态ARP表进行控制
我们知道,ARP(Address Resolution Protocol,地址转换协议)被当作底层协议,用于IP地址到物理地址的转换。在以太网中,所有对IP的访问最终都转化为对网卡MAC地址的访问。
不 妨设想一下,如果主机A的ARP列表中,到主机B的IP地址与MAC地址对应不正确,由A发往B数据包就会发向错误的MAC地址,当然无法顺利到达B,结 果是A与B根本不能进行通信。Linux可以通过arp命令控制ARP转换,即IP到MAC的转换。因此,也能利用这一功能对用户MAC地址进行匹配。下 面我们就来看看arp命令的用法。
输入arp将显示当前所有ARP转换记录,类似于这样:
Address HWtype HWaddress Flags Mask Iface
www.myhome.net ether 00:06:29:57:16:F5 C eth0
218.200.80.177 ether 00:01:30:F4:32:40 C eth1
ntc9.myhome.net ether 00:02:1E:F1:92:C2 C eth0
192.168.1.25 ether 00:02:1E:F1:92:C2 C eth0
由此可以看到,当前系统保留的IP地址与MAC地址一一对应,并指明了硬件类型(Hwtype)和通信所使用的接口(Iface)。不过这些都是动态生成的,无需手工干预。我们要做的恰恰是手工干预这一过程。
我 们需要用到arp命令的另一重要功能,就是手工更改这一对应关系。此外,该命令还可以读取文本文件中的ARP记录,其默认文件是/etc/ethers。 也就是说,当输入ARP-f的时候,系统就会读取/etc/ethers这个文件,并以其中的项目取代系统当前的ARP记录。假设/etc/ethers 文件内容如下:
192.168.1.25 00:02:01:50:bb:53
然后执行命令arp -f。
这时,我们查看系统ARP表,会发现无论192.168.0.25原来对应的MAC地址是什么,都会被新的所取代:
Address HWtype HWaddress Flags Mask Iface
www.myhome.net ether 00:06:29:57:16:F5 C eth0
218.200.80.177 ether 00:01:30:F4:32:40 C eth1
ntc9.myhome.net ether 00:02:1E:F1:92:C2 C eth0
192.168.1.25 ether 00:02:01:50:bb:53 C eth0
此 时,本机发往192.168.1.25的数据包目标MAC地址将由原来的00:02:1E:F1:92:C2改为00:02:01:50:bb:53。显 然,如果192.168.1.25所在网卡的MAC地址并非00:02:01:50:bb:53,数据包就无法到达正确的目的地,那么它们也就无法通信 了。这样也达到了识别非法用户的目的。
当然,控制MAC地址的方法还不止这些,例如可以利用交换机的端口管理功能识别用户。根据交换 机的原理,它是直接将数据发送到相应端口,那么就必须保有一个数据库,包含所有端口所连网卡的MAC地址,由此可见,控制每个端口使用的MAC地址理论上 是完全可行的。大部分中高端交换机如3Com SuperStack系列等,都具有这种功能。具体操作与交换机型号有关,这里就不赘述。
最 后,提醒一下,MAC地址控制并非绝对保险。正如这个世界上没有绝对解不开的密码一样,所谓安全都是相对于特定的环境而言。现在,很多网卡都支持MAC地 址的软件修改,Linux和Windows本身也都有办法修改这一物理地址。不过由于这种方式相对稳定,摒弃了繁琐的客户端设置,对用户完全透明,而且具 备很强的可操作性,所以在某种程度上说是安全的。
linux系统arp绑定,Linux下查看arp静态绑定地址相关推荐
- 查看linux系统版本centos,CentOS下查看系统版本的4种方法
Linux有很多的发行版,不同的版本会有一些细微区别,所以经常需要查看服务器系统的版本号. 下面来看下CentOS下如何查看CentOS版本. 方法1:cat /etc/issue 执行命令:[www ...
- 查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
欢迎大家关注笔者,你的关注是我持续更博的最大动力 原创文章,转载告知,盗版必究 查看Linux系统架构的命令,查看linux系统是哪种架构:AMD.ARM.x86.x86_64.pcc 文章目录: 1 ...
- Linux运维:CentOS7下查看内存占用
文章目录 查看主机信息 查看操作系统信息 查看Linux系统版本 查看物理CPU个数和型号 查看单个物理CPU核心数 查看逻辑CPU个数 查看内存信息 查看内存情况 查看内存剩余情况 内存使用排序取前 ...
- U盘刻录linux系统后在windows下无法识别完整容量
U盘刻录linux系统后在windows下无法识别完整容量 问题描述: 将linux系统刻录进U盘,会导致原本比如16G的U盘在windows上只能显示2m左右的容量. 这实际上是因为windows系 ...
- linux防火墙文件路径,防火墙问题 Linux系统 /etc/sysconfig/路径下无iptables文件
虚拟机新装了一个CentOs7,然后做防火墙配置的时候找不到iptables文件,解决方法如下: 因为默认使用的是firewall作为防火墙,把他停掉装个iptable systemctl stop ...
- linux系统下载经验,linux系统的学习经验首篇
1.linux打开terminal,两种最简单的办法,第一种,直接Ctrl+Alt+T:第二种,Alt+F2,输入gnome-terminal:更复杂的不建议使用. 2.linux没有盘符的概念,只有 ...
- 连接linux系统的mysql,Linux系统MySQL开启远程连接
1.远程连接上Linux系统,确保Linux系统已经安装上了MySQL数据库.登陆数据库.mysql -uroot -p(密码). 2.创建用户用来远程连接 GRANT ALL PRIVILEGES ...
- linux系统uptime解读,Linux uptime命令操作实例
Linux命令中,uptime命令除了能够查看系统cpu使用率外(详见系统之家如何使用w和uptime命令查看Linux系统使用率),还能查看系统运行时间等,下面小编就给大家详细介绍下uptime命令 ...
- Linux系统之部署Linux管理面板1Panel
Linux系统之部署Linux管理面板1Panel 一.1Panel介绍 1.1Panel简介 2.1Panel特点 二.本地环境规划 1.本此实践目的 2.本地环境规划 三.检查本地环境 1.检查操 ...
- imx6ull移植Linux系统第二篇——Linux内核的移植
imx6ull移植Linux系统第二篇--Linux内核的移植 花了大概两周的时间,把Linux的移植认真学了一遍,期间踩了不少坑,花费了不少时间去解决各种奇奇怪怪的问题,最终完成了uboot.系统镜 ...
最新文章
- 文本间加入任意字符的PHP函数
- ALSA声卡笔记3--ASoC驱动重要结构体关系图
- .net 面试题系列文章三(附答案)
- ssm的报错问题------You must configure either the server or JDBC driver (via the serverTimezone conf)
- 微信生态中,「电商」如何借“运营工具”,抢占 4.5 亿流量红利?
- linux 自动配置 mysql数据库,Linux下配置mysql数据库主从自动备份
- Fiori应用的花瓣动画效果是怎么画出来的
- UVa 11078 - Open Credit System
- 微信分享功能问题-描述内容换行,导致js加载失败
- pythonsearch方法_python正则表达式(4)--search方法
- win10如何截屏_6个Win10系统使用小技巧,对你一定有用!
- 成人高考自考资讯网源码 织梦dedecms模板
- 木马 --- 基本概念和分类
- java excel 筛选_Java 在Excel中添加筛选器并执行筛选
- vue3关闭语法错误提示
- 蓝桥杯科学素养题(2020年12月-2021年12月)
- opencv-python的颜色检测追踪
- poscms统计数据调用
- 从人物的名字看香港电影人的文化底蕴
- XMind 8 安装与激活