Win
下强行占用内部
IP
地址
2009
年
06
月
08
日
星期一
22:41
在内部网络
,
我们无法同时使用两个相同的
IP
地址
.
因为当我们更改的
IP
已经有人使用时
,
系
统会弹出一个
"IP
冲突提示
"
把修改
IP
的操作给终止了
.
此时如果想使用这个
IP,
只能等对方关机断网
.
出于某种目的
,
我们希望强行占用这个
IP,
能不能办到呢
?
答案是肯定的
.
首先正常更改一下
IP
地址
,
通过抓个包可以发现系统广播了三个
ARP
请求报文和一系列
NETBIOS
报文后
,
将
IP
成功更改
.
再更改一次
IP
地址
,
此时更改的
IP
为一个目前正在使用的一个
IP.
再
次抓包后发现
,
系统在发送
ARP
请求报文后就收到了来自正在使用此
IP
的计算机发过来的
ARP
应答报文
,
它的
ARP
字段的源
IP
地址与我们本机
IP
地址一样
,
这样的
ARP
应答报文称为
"
免费
ARP"
报文
.
系统收到
这样的应答报文后便会产生一个
"IP
冲突
"
的提示
,
然后就把更改
IP
的操作给终止了
,
因此无法在内部子
网内使用相同的
IP
地址
.
现在知道系统是通过
"
免费
ARP"
报文来禁止的使用相同
IP
操作
,
那如果把
"
免费
ARP"
应答报文
拦截掉
,
系统还会禁止我们使用相同的
IP
吗
?
马上实验
!
要拦截
"
免费
ARP"
应答报文
,
自己写代码有点困
难
,
那就利用现成的工具吧
.
经过测试发现
antiarp
防火墙
4.3
个人免费版可以拦截掉
"
免费
ARP"
应答报
文
.
正常启用
ARP
防火墙功能后
,
不需要进行任何设置
.
现在再来把
IP
更改为已经有人在使用的
IP.
此时
不会再收到
"IP
冲突提示
",
几秒钟后更
IP
便会成功
!
不过想安心的使用这个抢来的
IP
只是绕过本机系统
的封锁还不行
,
还得绕过整个内网的
"
封锁
".
上一个步骤我们虽然把
IP
给成功更改了
,
但
ping
几次域名后便可以发现
,
网络时断时续
,
甚至
无法上网
.
这是由于
ARP
协议的缘故
.
由于同一个
IP
已经有两个人使用
,
假设使用这个
IP
的
A
机器正在
ping
一个域名
,
那么它首先会广播一个
ARP
请求报文获取网关的
MAC
地址
,
网关收到请求报文后
,
会将请
求报文内源
IP
对应的
MAC
地址更新到缓存
.
这时候另一个同时使用此
IP
的
B
机器将出现断网
,
因为
B
机
器的报文在发到网关后
,
网关并不会将返回报文发送给
B
了
,
而是会发送给刚才更新后的
A
机器对应的
MAC
地址
.
所以网络时断时续
.
并且因为机器请求
MAC
地址的报文是广播发送的
,
其中一台机器接收到这个
报文后还会产生
"IP
冲突提示
".
除非使用
ARP
防火墙屏蔽
"
免费
ARP"
报文
.
所以还得再做些手脚
,
把这些
不该出现的问题解决了
.
解决的方法很简单
,
只需要将本机的
MAC
地址更改为和被占用机器的
MAC
地址一
样
,
这些烦恼就全部解决了
!
要获取指定机器的
MAC
地址
,
我们可以使用
"
nbtstat -A
对方
IP
"
这个命令来获取
.
但这个方法
必须在对方启用
NETBIOS
协议的前提下
,
如果对方没有启用的话
,
还有一个方法
,
那就是通过
ARP
请协议
来获取
.
只需要
PING
一下对方的
IP
地址
,
然后使用
arp
-a
就可以看到对方的
MAC
地址了
!
即使对方的防
火墙屏蔽
ICMP
回送
/
请求报文
.
也能正常获取
,
因为
ARP
协议工作在
OSI
的链路层
.
当然这个操作得在我
们占用对方
IP
前使用
.
待占用得手后再更改
.(
更改本机
MAC
操作
:
本地连接
-
右键
-
属性
-
配置
-
高级
-Network
Addree
处填入你需要改的
MAC
即可
)
到这里占用
IP
的工作就完成了
,
那些基于
IP
与
MAC
的
ACL
从此成为历史
...
希望大家不要乱设
,
特别是将本机
IP
设置为和网关一样
,
否则小心
BOSS
找你麻烦
!