【教程】通过Python设置网卡的DNS服务器

【教程】通过Python设置网卡的DNS服务器

哗啦啦
2年前发布 /正在检测是否收录...

先安装包

pip install psutil netifaces

可以调用

import psutil
import netifaces
import subprocess

def list_interfaces():
    # 获取当前计算机上所有的网卡信息
    interfaces = psutil.net_if_addrs()
    # 遍历网卡信息,输出网卡名称
    for interface in interfaces:
        print(interface)


def set_dns(interface_name="WLAN", dns_server='223.5.5.5'):
    '''interface_name是网卡的名称,如"Ethernet/WLAN";dns_servers是DNS服务器地址,多个地址可以用逗号隔开。'''
    # 调用netsh命令修改DNS服务器
    output = subprocess.run(["netsh", "interface", "ipv4", "set", "dnsservers", interface_name, "static", dns_server], check=True, capture_output=True)
    output_str = output.stdout.decode('gbk')
    print(output_str)
    # 输出修改后的DNS服务器地址
    output = subprocess.run(["netsh", "interface", "ipv4", "show", "dnsservers", interface_name], capture_output=True)
    output_str = output.stdout.decode('gbk')
    print(output_str)

设置效果

lf5hm1ez.png

注意事项

  1. 需要管理员权限
© 版权声明
THE END
喜欢就支持一下吧
点赞 0 分享 赞赏
评论 抢沙发
取消 登录评论
xfxuezhang