ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

python修改Windows网络配置--修改不了VLAN

2022-03-21 16:33:17  阅读:300  来源: 互联网

标签:网关 format python VLAN 修改 dns print gateway


方法一:通过wmi修改网络配置

import wmi
from time import sleep
import re

w = wmi.WMI()
num1 = 0

try:
    # 遍历所有网卡
    for network in w.Win32_NetworkAdapterConfiguration(IPEnabled=True):
        # print(network.Description)
        # 获取有效网卡
        if network.IPAddress:
            print('{}. {}'.format(num1, network.IPAddress))
            num1 += 1
    # 网络索引数
    n = int(input('请选择网卡:'))
    # 选择网卡
    net = w.Win32_NetworkAdapterConfiguration(IPEnabled=True)[n]

    i = input('10.10.21.')
    # IP地址
    add = ['10.10.21.{}'.format(i)]
    # 掩码
    mask = ['255.255.255.0']
      # 24位掩码 获取网络位
    zhuji = re.findall(r'(\d+.\d+.\d+.)\d+', i)
    # 配置网关地址
    g = input('网关:{}'.format(zhuji[0]))
    # 网关
    gateway = [zhuji[0] + g]
    # 网关优先级 数字越低优先级越高
    gateway_metric = [1]
    # dns
    dns = ['114.114.114.114', '223.5.5.5']
    # 配置IP、掩码
    sta = net.EnableStatic(IPAddress=add, SubnetMask=mask)
    # print(sta[0])
    # 修改成功返回0
    if sta[0] != 0:
        print('{} ip/掩码修改失败!!!'.format(add))
    else:
        print('{} ip修改成功!'.format(add))
    # 配置网关、网关优先级
    gat = net.SetGateways(DefaultIPGateway=gateway, GatewayCostMetric=gateway_metric )
    # print(gat[0])
    if gat[0] != 0:
        print('{} 网关修改失败!!!'.format(gateway))
    else:
        print('{} 网关修改成功!'.format(gateway))
    # 配置DNS
    dnss = net.SetDNSServerSearchOrder(DNSServerSearchOrder=dns)
    # print(dns[0])
    if dnss[0] != 0:
        print('{} dns修改失败!!!'.format(dns))
    else:
        print('{} dns修改成功!'.format(dns))
    print('\n修改结束!')
    sleep(6)


except Exception as e:
    print('程序出错{}'.format(e))
    sleep(6)

方法二:通过注册表修改网络配置(还没有验证)

遗留问题:

Windows下使用一根网线修改VLAN ID、IP、mask信息,在多个网段之间来回切换。

目前的解决方案,使用路由器连接多个网线,每个网口配置固定的VLAN、IP、mask。

标签:网关,format,python,VLAN,修改,dns,print,gateway
来源: https://www.cnblogs.com/aplmmy49y/p/16035285.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有