kn007的个人博客
♥ You are here: Home > 软件与网络 > Autoit3 > IP 地址修改器 [更新至 5.0.8.3]

IP 地址修改器 [更新至 5.0.8.3]

by | 343 Comments

做了个小工具,IP 地址修改器。

准确说,其实是重制了10年前的“IP 地址修改器”。。。

之前最后一个版本更新,是2.0最终版,在09年发布。

重制有几个原因,首先是不支持Win 10;其次,一些Bug和年轻时的中二等也导致了这次重制。

重制后,已在Win XP、Win 7、Win 10、Server 2003、Server 2008下测试通过。欢迎测试。

重制原因,主要是因为工作上,调试网络时会换不同的IP,有工具快速切换会舒服很多。

现在为了方便管理,一个地方会有几十个VLAN,调试时,不断切换还是很累人的。

程序主要原理还是利用了WMI的Win32_NetworkAdapterWin32_NetworkAdapterConfiguration,还有Netapi32.dll及注册表补充来获取信息,硬件方面用了Setupapi.dll来控制网卡禁启用。

本想用下iphlpapi.dll获取信息的,但测试完,感觉就是个废物。。没什么卵用。

至于MSFT_NetAdapter,因为最低要Win 8或Server 2012就放弃了。看了下,就是信息整合比较好、方法比较多,但还是要配合Win32_NetworkAdapterConfiguration使用。啥时候能有个动态库或好的WMI类单独来管理就好了。。。

新版的配置方案INI放在程序根目录下的“ip.dat”,而非旧版在AppDataDir下。主要是为了方便备份,做了这个改变。另外也加强GUI对配置文件的管理。

有其他疑问,欢迎留言。文件下载见文章末尾。

-- 2018.08.19

目前程序已在Win XP、Win 7、Win 8、Win 8.1、Win 10、Win 11、Server 2003 (R2)、Server 2008 (R2)、Server 2012 (R2)、Server 2016、Server 2019、Server 2022、Server 2025下测试通过。

-- 2025.10.31

最新版程序将不再支持Windows XP、Server 2003 (R2)下使用,如果需要请下载5.0.7.7版本。

-- 2025.12.31


程序截图:


按F1可以查看软件帮助,强烈建议先看帮助,有很多功能上解释和各种使用提示。

按F8就是工具箱(内含“C网群Ping器”和“子网掩码计算器”),主界面右下角工具图标也可以弹出工具箱。

问问题前,请先按F1看软件帮助,或许可以解答你的疑问。

本软件为免费软件,仅在我博客分享。解压密码:kn007.net

关于病毒的问题,这是检测报告。Autoit会被误报已是常事,基本稍有名气的杀软都不会报毒。

由于不知谁将程序一直提交黑名单或恶意软件之类的,于2025-03-27起已经被国外杀软特征识别后标记,Windows Defender也在影响之内。请自行斟酌。有疑问可以不用。

其他想说的,请见末尾的更新历史碎碎念。

注意:如果需要在Windows XP、Server 2003 (R2)下使用,请下载5.0.7.7版本。

文件: IP地址修改器.exe
大小: 1057392 字节
文件版本: 5.0.8.3
修改时间: 2026年01月10日 18:55:05
MD5: FF98EF4967310C5ECE1E48760DB440C3
SHA1: CFCE3243A04D49680D28F0B38AE0AD9774A0DD62
CRC32: EFB7FC21

IP地址修改器 5.0.8.3:
1.修复在Vista下,多IP配置时,由于系统自身问题导致的网关地址未能正常显示及配置
2.修复切换网卡时,数据显示或存在异常问题
3.补充界面交互提示
4.优化代码逻辑
5.为“子网掩码计算器”中反掩码提示添加可双击复制反掩码

IP地址修改器 5.0.8.2 :
1.修复系统版本低于Windows 8时,检测网卡变化计时器过快可能导致的渲染错误
2.修复一处严重Bug(可能出现修改后,缺失IP地址及子网掩码,但其他数据存在的情况)
(该Bug存在于5.0.2.5之后的版本)

IP地址修改器 5.0.8.1 : 
1.修复“C网群Ping器”使用系统ping.exe时,结果不准确问题
2.优化代码逻辑
3.使用新的编译器(实验性),因特性变化,降低了程序执行速度

IP地址修改器 5.0.8.0 : 
1.本版本起,不再支持Windows XP、Server 2003 (R2)
2.优化代码效率和执行逻辑
3.界面渲染优化,速度提升
4.修复了一些Bug
5.为“C网群Ping器”添加对本机IP进行颜色区分
6.为“C网群Ping器”添加使用系统ping.exe进行Ping支持
7.功能整合,调整“C网群Ping器”功能逻辑,详见帮助
8.更新并完善帮助说明
9.使用新的编译器(实验性)

文件: IP地址修改器.exe 检测报告
大小: 1056880 字节
文件版本: 5.0.7.7
修改时间: 2025年10月28日 22:33:55
MD5: 31DB3067811206C8FDBB3A64FF7C05D3
SHA1: D97C032A7C354AECF9FBAF0C0C827F95DF34F258
CRC32: F52F78D1

更新历史▼显示

喜欢的小伙伴,可以选择赞助我。

赞助


除非必要,基本不会再更新了,本身也是自用的软件分享。有能力或有心者可以考虑赞助下我,谢谢啦。

有Bug可以提,影响使用的会改。新增功能上的,除非我自己有需求,不然可能不会再增加什么了。

关于报毒问题,虽然软件无恶意行为,但功能涉及修改系统信息,被认为是恶意软件,也算是合理吧。

小软件无付费的代码证书,又是Autoit写的,指望杀软判断为无毒软件不大现实。大家自行斟酌使用。

下面是之前是每次更新想说的一些话或功能说明,还有一些老的截图。太长了,所以折叠起来。

更新历史碎碎念▼显示
历史程序截图▼显示

转载请注明转自: kn007的个人博客 的《IP 地址修改器 [更新至 5.0.8.3]

donate
有所帮助?
Tags: , ,
Comments
343 Comments立即评论
  1. 回复

    an uahandled exception qccurred win10打开出现异常

    1. MOD
      回复

      @风囧: 不适用精简版系统

    2. 回复

      @kn007: 我是win10专业版的

    3. MOD
      回复

      @风囧: 系统有没有被精简还是是母盘正常安装的?
      你查看下系统wmi服务是否正常。
      是一打开就错误,还是在执行什么的时候错误?

  2. 回复

    请问可以修改随身WiFi发射器的MAC地址吗,那样的话真的太棒了,或者有可以修改mac地址的随身WiFi吗,可收费,公司刷脸用,微80812698 ;-)

    1. MOD
      回复

      @粉丝: 软件上的MAC更改,需要网卡支持。具体可以参加F1说明。
      至于随身wifi,建议你买支持修改的。。

  3. 回复

    为什么下载下来是txt文本 :sad:

    1. MOD
      回复

      @海风: 请使用浏览器下载 :x

    2. 回复

      @kn007: 下载好了。谢谢大佬,顺便问一下这个能突破公司网络不能玩游戏的限制吗 :smile:

    3. MOD
      回复

      @海风: 那要看你们公司网管怎么做策略,还有就是用什么做。。。

    4. 回复

      @kn007: 打开4399 提示的策略是 限制游戏 :roll:

    5. MOD
      回复

      @海风: 深信服?那没办法。

  4. 回复

    您好!我最近在练习制作一个ip小工具,但是遇到了问题:
    在一个没有插入网线的物理网卡上,我使用Win32_NetworkAdapterConfiguration设置ip为静态后,查询到的EnableDHCP属性仍然为true,但是使用您的工具设置后,就会变为false,想请教您使用了什么方法,使得EnableDHCP及时得到了更新?如果您能抽空给与帮助指点,不胜感激,谢谢!
    另外您设置ip只用到了Win32_NetworkAdapterConfiguration一个方法吗?
    期待您的回复,再次感谢~

    1. MOD
      回复

      @mk_cs: 首先,感谢你的赞助。

      关于WMI使用了什么,我文章写得很清楚(其实软件都用了哪些方法,其实文章都写了)。

      设置ip的话wmi的话,只使用了Win32_NetworkAdapterConfiguration这一个方法,没错。
      但wmi有个问题,需要网卡在线,不在线他会有坑。不在线的话,你需要使用netsh相辅。
      至于为什么不直接用netsh,因为太慢,如果网卡在线,甚至会卡着不动,这时候就需要wmi了。
      所以必须要要判断。

      至于EnableDHCP,做完动作,写下注册表就好了。因为win需要网卡连接状态(非普通状态)更新后,才会更新这个值。

      关于注册表改ip设置,在win7前,你都可以通过操作注册表来完成,之后,你跟以前一样操作注册表,会导致设置乱掉。所以如果喜欢改注册表要注意了,非常多的坑。

      再次感谢赞助,另外博客的留言中,网址可以留空,不用写“无”。。

      其实归根结底,还是历史遗留问题,导致ms的api太多缺陷了。这漏那漏的。。。

    2. 回复

      @kn007: 非常感谢您耐心的回复和指点!
      我把我理解的说一下,您看看我理解的是否有误,谢谢!
      一是先判断网卡是否在线,如果在线,就用wmi,如果不在线,用NetSH
      二是如果用NetSH,做完动作(置为静态ip)要修改下注册表,把EnableDHCP这个值手动置为0
      还有两点疑问:
      一是如何判断NetSH已执行完毕?因为我发现设置dns时会消耗比较长的时间
      二是如何判断NetSH是否执行成功了,以免静态ip设置失败后仍错误的将EnableDHCP注册表值置为0?

      因为我水平有限,经历了几个晚上的百度,还是没有解决这个问题,所以才冒昧的来求教,感谢您的不吝赐教,祝您身体健康!事事顺利!

    3. MOD
      回复

      @mk_cs: 我意思,你做在同个函数里边。我现在就是,也可以按功能拆分下函数,这个按个人习惯。
      然后EnableDHCP,像我,是直接最后写入注册表,按照动作给1或0。
      网卡不在线的时候,netsh是很快的,如果你设置dns为自动的话。
      如果你说手动慢,那是因为你没有去看msdn,netsh interface这个动作设置dns,是会检查dns是否存在和正常的,你需要加个validate参数,让他直接执行而不检测。这样就快。
      很可惜的是netsh,正常来说是无法失败的,他的机制。。。当然为了保险,你可以再读一次网卡数据来做保证(我是判断任务超时)。

    4. MOD
      回复

      @mk_cs: 我为什么提到任务超时。。。
      主要是总有些人很无聊,要么不按规定写ip,要么是拿其他工具篡改你的编辑框数据,导致成功传参给函数,这个时候任务是会失败的,而且很多时候,会卡住不动。。所以做了个超时判定

    5. 回复

      @kn007: 谢谢!我想我明白基本思路了。
      我编程经验少,也还没有养成常看MSDN的习惯,所以很多问题没有自己解决。
      再次感谢您的指教!

  5. 回复

    大神,因为工作原因,我需要国内各个区域切换IP,请问您这个软件能实现吗? ;-)

  6. 回复

    Setupapi.dll来控制网卡禁启用 的代码能贴一下吗?谢谢。

  7. 回复

    都重做了,加些新功能吧,把电脑硬件资产管理记录也整合进去呗,做成服务端跟客户端那样的,在修改IP的同时也收集一下硬件信息,如果能再加个开机通道,就更好了。

    1. MOD
      回复

      @8381503: :sad: 你在哪个单位的
      免费项目,随心

    2. 回复

      @kn007: 以前在网吧工作的时候有用过你之前写的版本,现在在小企业里混口饭吃,最近要一台一台重新规划一下网络并登记一下硬件,就看到你这里有更新了。

  8. 回复

    默认选择的网卡可以是第一个启用的网卡...

  9. 回复

    群Ping工具没整合进来吗? 下载的包里没有。

    1. MOD
      回复

      @wubantu: 文章写的很清楚,软件说明也写的很清楚。
      你不看我也没有什么办法。
      按F8调用出来。按F1看帮助。

  10. 回复

    能加个定时修改mac地址的功能吗?或者代码分享下呢? 谢谢

;-):|:x:twisted::smile::shock::sad::roll::razz::oops::o:mrgreen::lol::idea::grin::evil::cry::cool::arrow::???::?::!: