一种自动配置ip地址的方法
【技术领域】
[0001]本发明涉及网络信息技术领域,涉及一种自动配置IP地址的方法。
【背景技术】
[0002]目前网络信息技术领域内,对计算机接入一个新的局域网络时,可以通过自动或者手动方式获取IP地址,但是自动获取IP地址可能造成地址冲突或不能上网,而通过手动修改本地IP地址在实际应用过程中存在以下问题:因计算机使用人员的计算机知识不同,所以有很多人员不具备手动成功配置IP地址的技能。对计算机网络设备的状态不熟悉会导致配置失败,配置过程复杂。对手动配置的IP地址的正确性无法验证等情况。
【发明内容】
[0003]本发明针对现有技术的缺陷,提供了一种自动配置IP地址的方法,能有效的解决上述现有技术存在的问题。
[0004]为了实现以上发明目的,本发明采取的技术方案如下:
[0005]一种自动配置IP地址的方法,包括以下步骤:
[0006]S1:计算机接入网络,检查网络连接的状态;
[0007]S2:使用DHCP获取IP地址,通过调用windows的netshell命令,将以太网连接的IP地址配置设置为自动获取方式;
[0008]S3:检查IP地址是否正确,正确则结束,不正确则执行S4 ;
[0009]S4:自动指定新的IP地址。
[0010]作为优选,所述SI的详细步骤如下:
[0011]SlOl:计算机接入网络后,获取当前计算机中的所有网络连接;
[0012]S102:运行CMD命令窗口执行命令ipconfig/all,得到电脑中所有网络连接的连接信息;
[0013]S103:调用windows api “GetAdaptersInfo”获取电脑中所有网络连接设备的硬件信息
[0014]S104:使用S102中每一个连接的名称在S103的硬件信息中找出相同名称的硬件信息,判断找出的硬件类型是否PCI或USB设备,如果是即为本地以太网连接则执行S106 ;若没有找到任何的以太网连接,则表示此时的以太网连接为禁用状态则执行S105 ;
[0015]S105:通过调用 windows api “EnumConnect1ns、INetConnect1n.Connect”将以太网网络状态设置为启用状态后执行S104 ;
[0016]S106:运行CMD命令窗口执行命令ipconfig得到电脑中所有网络的简要信息,检查S104步中找到的以太网连接的连接状态是否为已经连接状态若已经连接则结束,若Media State 为 Media disconnected 则执行 S107 ;
[0017]S107:退出整个过程,并提示需要插入网络线缆或检查网络线缆。
[0018]作为优选,所述S3的详细步骤如下:
[0019]S301:运行CMD命令窗口执行命令ipconfig/all获取以太网网络连接的IP地址信息。
[0020]S302:判断IP地址信息是否为“169.254”开头;如果是,则表示自动获取IP地址失败,执行S4 ;若不是则表示获取成功,结束。
[0021]作为优选,所述S4的详细步骤如下:
[0022]S401:遍历所有私有IP地址的网段;
[0023]S402:针对每一类私有IP地址网段,通过执行CMD命令行完成本地IP地址的应用;
[0024]S403:应用成功后,执行CMD命令:PING “目标地址”,获取命令返回结果;
[0025]S404:检查返回结果中目标地址是否能够连通;如果连通则表示当前配置的IP地址有效,使用该IP地址,否则进行下一个网段的尝试;直到找到可用的IP地址,并指定该IP地址为本计算机IP地址。
[0026]作为优选,所述私有IP地址网段分为三类,内容如下:
[0027]A 类:10.0.0.0-10.255.255.255 ;
[0028]B 类:172.16.0.0 - 172.31.255.255 ;
[0029]C 类:192.168.0.0 - 192.168.255.255。
[0030]作为优选,所述S402 中 CMD 命令行为:netsh interface ip set address name=以太网 source = static addr = “IP 地址”mask = “子网掩码” gateway = “IP 地址网关,,gwmetric = 0。
[0031]与现有技术相比本发明的优点在于:可自动获取计算机接入的新网络的IP地址。在配置地址前,会对网络设备的状态进行检查。实现一键配置IP地址,节省操作时间。IP地址配置好后,增加对网关的连通性测试,以确保IP地址的正确性。本发明避免了自动配置的地址冲突情况和无法连网的情况,又比手动配置IP地址效率更高,且配置成功率高。
【附图说明】
[0032]图1为发明实施例的主流程图。
【具体实施方式】
[0033]为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明做进一步详细说明。
[0034]如图1所示,一种自动配置IP地址的方法,包括以下步骤:
[0035]S1:计算机接入网络,检查网络连接的状态;
[0036]S2:使用DHCP获取IP地址,通过调用windows的netshell命令,将以太网连接的IP地址配置设置为自动获取方式;
[0037]S3:检查IP地址是否正确,正确则结束,不正确则执行S4 ;
[0038]S4:自动指定新的IP地址。
[0039]所述SI的详细步骤如下:
[0040]SlOl:计算机接入网络后,获取当前计算机中的所有网络连接;
[0041]S102:运行CMD命令窗口执行命令ipconfig/all,得到电脑中所有网络连接的连接信息;
[0042]S103:调用windows api “GetAdaptersInfo”获取电脑中所有网络连接设备的硬件信息
[0043]S104:使用S102中每一个连接的名称在S103的硬件信息中找出相同名称的硬件信息,判断找出的硬件类型是否PCI或USB设备,如果是即为本地以太网连接则执行S106 ;若没有找到任何的以太网连接,则表示此时的以太网连接为禁用状态则执行S105 ;
[0044]S105:通过调用 windows api “EnumConnect1ns、INetConnect1n.Connect”将以太网网络状态设置为启用状态后执行S104 ;
[0045]S106:运行CMD命令窗口执行命令ipconfig得到电脑中所有网络的简要信息,检查S104步中找到的以太网连接的连接状态是否为已经连接状态若已经连接则结束,若MediaState 为 Media disconnected 则执行 S107 ;
[0046]简要信息示例如下:
[0047]Ethernet adapter Connect1n Name:
[0048]Media State...........:Media disconnected
[0049]Connect1n-specific DNS Suffix.:
[0050]Descript1n...........:1ntel (R) 82577LM Gigabit Network Connect1n
[0051]Physical Address.........:F0-DE-F1-1B-39-28
[0052]DHCP Enabled...........:Yes
[0053]Autoconfigurat1n Enabled....:Yes
[0054]S107:退出整个过程,并提示需要插入网络线缆或检查网络线缆。
[0055]所述S3的详细步骤如下:
[0056]S301:运行CMD命令窗口执行命令ipconfig/all获取以太网网络连接的IP地址信息。信息示例如下:
[0057]以太网适配器以太网:
[0058]连接特定的DNS后缀.......:
[0059]描述...............:Realtek PCIe GBE Family Controller
[0060]物理地址.............:BC-EE-7B-E3-02-8C
[0061]DHCP已启用...........:是<