电话

15169028800

Python310动态修改Windows系统(win10w11)本地IP地址(静态IP)

标签: 局域网ip地址 2023-08-01 

  一般情况下,局域网里的终端比如本地服务器设置静态IP的好处是可以有效减少网络连接时间,原因是过程中省略了每次联网后从DHCP服务器获取IP地址的流程,缺点是容易引发IP地址的冲突,当然,还有操作层面的繁琐,如果想要切换静态IP地址,就得去网络连接设置中手动操作,本次我们使用Python3.10动态地修改电脑的静态IP地址。

  一个网卡对应一个静态IP地址,但机器上未必只有一个网卡,所以如果想动态切换,必须要指定网卡名称,Win系统中通过ipconfig命令来获取当前系统的网卡信息:

  如果想通过Python来获取网卡信息,则需要在脚本中运行ipconfig命令,构建change_ip.py脚本:

  这里通过os模块的popen方法来运行ipconfig命令,随后再使用正则来匹配网卡名称,最后将匹配到的网卡列表赋值给实例属性,程序返回:

  接下来就是通过Python脚本来动态切换指定网卡的静态IP地址了,Windows系统通过netsh命令来指定IP地址:

  这里name参数是网卡名称,后来三个地址分别代表静态IP地址,子网掩码以及网关地址。

  这里添加一个实例方法来设置ip地址,同样使用popen方法来运行命令,随后进行调用:

  藉此,我们就可以通过Python3.10动态地配置本地网卡的静态IP地址,也可以理解为是一种Python自动化流程,静态IP地址可以让IP地址语义化,对于数据中心、网站、银行的结算端口等往往需要静态IP,与此同时,也省却了手动配置静态IP的繁琐过程。