更改MAC地址

来源:百度文库 编辑:神马文学网 时间:2024/04/29 13:11:21
换了网卡无法登陆是由于绑定了MAC,而更换网卡后MAC随之改变。如果不知道原来网卡的MAC地址,你可以到学校网络中心申请更换绑定的MAC。如果知道原来的MAC的话可以打开网络连接“属性”窗口,单击“配置”。单击“高级”选项卡,选择"属性"里的netword address,在右面的“值”中输入原来网卡的MAC即可,格式类似“00105CF0A955”  修改网卡的MAC地址是很容易的,我们既可以在操作系统中通过软件来修改网卡的MAC地址,而实际的网卡MAC地址不变,以达到欺骗软件的目的;也可以用工具直接更改网卡的实际MAC地址。

一、瞒天过海

1.修改注册表

  几乎所有的网卡驱动程序都可以被NdisReadNetworkAddress参数调用,以便从注册表中读取一个用户指定的MAC地址。当驱动程序确定这个MAC地址是有效的,就会将这个MAC地址编程入其硬件寄存器中,而忽略网卡固有的MAC地址。我们通过手工修改Windows的注册表就可以达到目的。

  在Winodws 98下运行Windows的注册表编辑器,展开“HKEY_LOCAL_MACHINE\System\Current ControlSet\Services\Class\Net”,会看到类似“0000”、“0001”、“0002”的子键。从“0000”子键开始点击,依次查找子键下的“DriverDesc”键的内容,直到找到与我们查找的目标完全相同的网卡注册表信息为止。

  当找到正确的网卡后,点击下拉式菜单“编辑/新建/字符串”,串的名称为“Networkaddress”,在新建的“Networkaddress”串名称上双击鼠标就可以输入数值了。输入你想指定的新的MAC地址值。新的MAC地址应该是一个12位的十六进制数字或字母,其间没有“-”,类似“000000000000”的这样的数值(注意,在Windows 98和Windows 2000/XP中具体键值的位置稍有不同,大家可通过查找功能来寻找)。

  在“NetworkAddress”下继续添加一个名为 “ParamDesc”的字串值,它将作为“NetworkAddress”项的描述,数值可以取为“MAC Address”。再把它的内容修改为你想设定的内容。如图所示。

 

这样,我们就成功地修改了网卡的MAC地址,重新启动计算机即可。

 

2.修改网卡属性

  大部分的网卡都可以通过在控制面板中修改网卡属性来更改其MAC地址,笔者的3COM 3C905B-TX和RTL8139芯片的网卡都可以这样轻松修改。

  在“设备管理器中”,右键点击需要修改MAC地址的网卡图标,并选择“属性/高级”选项卡。在“属性”区,就可以看到一个称作“Network Address”或其他相类似名字的的项目,点击它,在右侧“值”的下方,输入要指定的MAC地址值。要连续输入12个十六进制数字或字母,不要在其间输入“-”。重新启动系统后设置就会生效了。


如果是Windows 2000/XP的用户,则可以使用免费MAC地址修改软件SMAC。运行SMAC后,窗口中的列表框列出计算机上正处于工作状态的网卡。选定要修改的网卡后,在列表框下方的六个输入框中输入新的MAC地址后,点击右侧的“Update MAC(修改MAC地址)”,即可完成MAC地址的修改。

 


修改MAC地址的工具有很多,但大多数都只适用于Windows 2000/XP,在这里推荐用“超级兔子魔法设置”,因为不但简单易用,而且在Windows 9x系统中使用同样有效。

 


一、Win 2000下修改MAC地址
1.在“HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class\\4D36E972-E325-11CE-BFC1-08002BE10318\\0000、0001、0002”等主键下, 因为你有可能安装了不止一块网卡,所以在这个主键下可能会有多个类似于“0000、0001”的主键,这时候你可以查找DriverDesc内容为你要修改的网卡的描述相吻合的主键,如“0000”。
2.在上面提到的主键下,添一个字符串,名字为“NetworkAddress”,把它的值设为你要的MAC地址,要连续写如“001010101010”。
3.然后到主键下“NDI\\params”中添加一项“NetworkAddress”的主键值,在该主键下添加名为“default”的字符串,值写要设的MAC地址,要连续写,如“001010101010”。
【注】实际上这只是设置在后面提到的高级属性中的“初始值”,实际使用的MAC地址还是取决于在第2点中提到的“NetworkAddress”参数,而且一旦设置后,以后高级属性中值就是“NetworkAddress”给出的值而非“default”给出的了。
4.在“NetworkAddress”的主键下继续添加名为“ParamDesc”的字符串,其作用为指定“NetworkAddress”主键的描述,其值可为“MAC Address”(也可以随意设置,这只是个描述,无关紧要,这个值将会在你以后直接修改MAC地址的时候作为描述出现),这样重新启动一次以后打开网络邻居的属性,双击相应网卡项会发现有一个高级设置,其下存在MAC Address (就是你在前面设置的ParamDesc,如图(^29041103a^)1)的选项,这就是你在第二步里在注册表中加的新项“NetworkAddress”,以后只要在此修改MAC地址就可以了。
5.关闭注册表编辑器,重新启动,你的网卡地址已经改好了。打开网络邻居的属性,双击相应网卡项会发现有一个MAC Address的高级设置项。用于直接修改MAC地址,而且不需要重新启动就可以实现MAC的随时更改。

二、 Linux下的MAC地址更改
1.首先必须关闭网卡设备,否则会报告系统忙,无法更改。
命令是:“/sbin/ifconfig eth0 down”
2.修改MAC地址,这一步较Windows中的修改要简单。
命令是:“/sbin/ifconfig eth0 hw ether 00AABBCCDDEE”
3.重新启用网卡
“/sbin/ifconfig eth0 up”网卡的MAC地址更改就完成了。

三、Win Me下的MAC更改
在Win Me下,MAC地址的更改和Win 98下是一样的,在22期中《给网卡换张“身份证”》一文中已经有介绍,所以不再赘述。

四、补充说明
1.在Win 2000下,已经没有“winipcfg”命令,但是你仍然可以通过“ipconfig”命令来获取网卡的MAC地址信息,方法是首先在运行中输入“cmd”,回车,进入命令行方式,然后输入“ipconfig -all”(此命令在Win 98和Win ME中也可使用),你就可以找到网卡的各项信息,如图(^29041103b^)2。
2.为什么修改MAC地址?可能有很多人迷惑不解,为什么用这么大的篇幅来介绍修改MAC地址,到底有什么实际意义呢?简单的说,MAC地址相当于你的网络标识,在局域网里,管理人员常常将网络端口与客户机的MAC地址绑定,方便管理,万一你的网卡坏掉了,换一张网卡必须向管理人员申请更改绑定的MAC地址,比较麻烦,这时候,我们直接在操作系统里更改一下MAC,就可以跳过重新申请这一步,减少了很多麻烦。
另外,当你使用黑客软件对别人的机器进行攻击时,别人的防火墙获取到你的IP地址,就可以通过“Nbtstat -A ip地址”命令获取你的MAC,如果你改一下,呵呵,查到的MAC就不是你的了。(可别说我教你学坏啊!)
3.如果嫌修改过于麻烦,或者有多台机器需要修改,可以按如下步骤生成一个.reg文件,直接导入机器即可。

Win 98下的注册表文件:

REGEDIT4
HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Services\\Class\\Net\\0000
"NetWorkAddress"="5254ab338b8d"
HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Services\\Class\\Net\\0000\\Ndi\\Params\\networkaddress
"default"="5254ab338b8d"
"paramdesc"="MAC Address"
HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Services\\Class\\Net\\0000\\Ndi\\Params\\networkaddress
"default"="5254ab338b8d"
"paramdesc"="MAC Address"

Win 2000下的注册表文件:

REGEDIT4
HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class\\4D36E972-E325-11CE-BFC1-08002BE10318\\0000
"NetWorkAddress"="5254ab338b8d"
HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class\\4D36E972-E325-11CE-BFC1-08002B
E10318\\0000\\Ndi\\Params\\networkaddress
"default"="5254ab338b8d"
"paramdesc"="MAC Address"
HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class\\4D36E972-E325-11CE-BFC1-08002BE10318\\0000\\Ndi\\Params\\networkaddress
"default"="5254ab338b8d"
"paramdesc"="MAC Address"

用记事本生成以上文件然后保存成1.reg,双击即可实现修改,但是,有一点必须注意,就是必须确定你的网卡在注册表里究竟是“0000”,还是“0001”等其他的,然后在这个Reg文件里进行相应的修改再执行导入操作。否则只会是白费力气。