决定使用ARP绑定后,接下来就要考虑ARP的实现方法。ARP(Address Resolution Protocol)协议是用来向对方的计算机、网络设备通知自己IP对应的MAC地址的。

如果所有非法用户都被赋予了错误的MAC地址,那么他们是无法通过这台服务器上网的。  因此,ARP绑定要求必须将所有可能的IP地址全部与MAC地址绑定,才能够杜绝非法用户(当然,用户修改MAC地址除外)。

经过一番思索,确定了初步的构思。首先,用Linux Shell的循环方法生成一张包含从10。0。0。1到10。0。3。254的无效MAC地址匹配表,称之为全局表。  然后根据DHCP服务器的数据得到一张合法用户的IP和MAC地址表,称之为合法表。

接着,读取合法表中每个用户的IP,并在全局表中寻找匹配的IP,如果找到的话就用合法用户的MAC地址替换原来无效的MAC地址。最后,这张全局表中的合法用户匹配正确MAC地址,而非法用户匹配无效的MAC地址。

只要用户把这张表写入系统ARP缓存,非法用户就不能通过简单的盗取IP方法来通过网关了。

实现

首先生成一张初始的全局表。它包含所有IP地址,每个IP地址与一个非法的MAC地址匹配。

它的格式必须是arp命令能够识别的。初始化全局表的脚本为init,内容如下:

#!/bin/bash  ipprefix=10。  0。  count1=0  while (( $count1 arp,就可以将结果保存到当前目录的arp文件中。

该文件就是10。0。0。1到10。0。3。254所有IP地址与MAC地址00e000000001绑定的ARP表,看上去该文件类似于下面这样:

10。  0。0。1 00e000000001  10。

0。0。2 00e000000001  10。0。0。3 00e000000001  10。0。0。4 00e000000001  10。0。0。5 00e000000001  。。。 。。。

需要注意的是,Shell脚本语法虽然和C语言类似,但对格式要求很严格,有些地方不能加空格,有些地方则必须加空格。  比如let $count1+=1就不能写成let $count1 += 1;相反,while (( $count1 < 4 )) 也不能写成while (($count1<4)),括号与语句之间必需有空格。

接下来通过DHCP服务器得到合法用户的IP与MAC地址匹配表(即合法用户表),假设是valid。  arp文件。编写一个脚本一行一行地读取该表,每得到一个IP地址记录,就在前面生成的arp文件中查找同样的IP。

如果找到的话,那么就用valid。arp中该IP的MAC地址替换arp文件中该IP的MAC地址。

[展开]

linux ip地址无法进入,linux下怎么杜绝通过ip地址进入网?l – 手机爱问相关推荐

  1. 如何在pe系统安装linux系统,linux系统可以进PE安装吗或者用GHO – 手机爱问

    2018-02-13 怎样使用ghost对linux进行系统备份? 准备步骤: 1.下载软件: 软件发布地址: http://sourceforge.net/projects/g4l 软件下载地址: ...

  2. pe下查看ip和计算机名称,pe下查看原系统ip的方法

    pe下查看原系统ip的方法 方法及步骤如下: 在PE下加载注册表,找到[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Param ...

  3. 怎么修改游戏的服务器ip地址吗,我的服务器IP地址,能改否?  – 手机爱问

    2007-04-14 "网络属性"中"Internet DHCP是可自动将IP位址指派给登入TCP/IP网络的用户端的一种软件,(此种IP位址称为「动态IP位址」).这种 ...

  4. 每个计算机的ip地址要一样吗,同一ip网站-局域网中的所有电脑都是同一个IP地址吗? – 手机爱问...

    2008-05-15 在局域网中如何通过ip地址打开别人的电脑 1.Windows XP系统"远程协助"的应用"远程协助"是Windows XP系统附带提供的一 ...

  5. 玩游戏时的服务器显示地点,游戏服务器ip在哪-如何知道游戏服务器的IP地址我想知道我玩 – 手机爱问...

    2006-08-29 上网时我不想让别人知道我的IP地址,包括像腾迅这样的网站,因为有人说打电话去腾迅就可以查到QQ上网的IP记录,我不想让人知道,我应该怎么办?我不太懂网络技术,请详细解答,谢谢! ...

  6. 为什么不同的计算机有不同的IP地址,我的电脑的IP地址和网上显示的为什么不一样 – 手机爱问...

    2007-01-16 为什么我的IP地址总是不一样? 我们说过因特网是把全世界的无数个网络连接起来的一个庞大的网间网,每个网络中的计算机通过其自身的IP地址而被唯一标识的,据此我们也可以设想,在INT ...

  7. 电脑和服务器ip作用是什么意思,分配ip地址的服务器-服务器IP地址和客户端IP地址有什么区别? – 手机爱问...

    2010-08-27 游戏服务器端与游戏客户端编程区别经常在 什么是服务器端和客户端? 作为网页设计者,必须了解这2个基本的概念,因为这2个名词在实际的网页制作研究和应用中经常会遇到.首先我来举 ...

  8. linux里wps打开ppt乱码,打开wps的ppt文件的时候出现乱码怎么办 – 手机爱问

    2018-10-29 记事本打开文件乱码怎么办呢? 一.最简单的方法就是将你的txt文档的后缀名改掉,要看你改成原作者所编辑的格式,比如你原先是word文档格式,保存的时候保存的是txt格式,这样只能 ...

  9. 2021高考成绩等位线查询四川,泸州医学院的麻醉专业收分请问下四川考生一 – 手机爱问...

    2017-10-22 请问我高考523分,四川考生,等位分怎么看 查询举例 王同学2011年理科高考成绩568分,超过本一批线49分,最心仪的大学是四川大学.王同学通过等位分查询系统将高考成绩换算成等 ...

最新文章

  1. 最大识车数据集:6.4万张车型参数完整标注,交通安防二手都能用
  2. php 收缩栏,HTML5每日一练之details展开收缩标签的应用
  3. MATLAB中数组的原始索引和线性索引之间相互进行转换
  4. C#基础8:类的继承
  5. bzoj 3101: N皇后
  6. Qt QPainter绘图
  7. java中是什么意思_java中@什么意思
  8. 如何判断一个APP页面是原生的还是H5页面
  9. vue中的子传父和父传子
  10. 小样本学习在滴滴治理和安全场景应用
  11. 免费范文网复制内容-百味书屋
  12. python按某列拆分excel表格_把一张Excel表按照固定列分成不同工作薄的小白方法...
  13. LAMP架构集成ownCloud搭建私有云盘日记
  14. 微信小程序的路由,以及生命周期
  15. 理科男用这种方式泡妞,真的能迎娶白富美吗?!
  16. ZCMU 1600: 卡斯丁狗要吃糖葫芦
  17. 带大家读python数据分析一书(二)
  18. DiskGenius
  19. Win7安装Tornado2.2.1 for PowerPC
  20. Linux命令查看压缩包文件目录

热门文章

  1. 用函数实现比较两个数的大小
  2. “PV TOP 50”2020光伏创新榜名单发布
  3. 栈和队列详解(C语言)
  4. TensorFlow动态图 VS PyTorch静态图
  5. 链表栈 一 二叉搜索树 一 深度优先之前序遍历
  6. android通知栏自定义view,android WindowManager addView 仿悬浮式通知栏
  7. 3个DIV浮动的26个组合方式
  8. 2021-09-11猫和老鼠
  9. 抗渗等级p6是什么意思_混凝土p6是什么意思
  10. Polyworks脚本开发学习笔记(十四)-WORKSPACE信息读取及管理