在计算机网络管理中,通过命令行设置IP地址是一项基础且重要的操作,适用于Windows、Linux等主流操作系统,不同系统的命令和操作流程存在差异,以下将分别详细介绍具体方法,并补充相关注意事项。

Windows系统:通过netsh命令设置IP
Windows系统提供了netsh命令工具,可快速配置静态IP地址、子网掩码、默认网关及DNS服务器,操作步骤如下:
以管理员身份打开命令提示符
- 点击“开始”菜单,输入“cmd”,右键点击“命令提示符”,选择“以管理员身份运行”(否则可能提示权限不足)。
查看当前网络接口名称
在配置前,需先确认网络连接的名称(如“以太网”“WLAN”等),输入命令:
netsh interface show interface
执行后会列出所有网络接口,记录需要配置的接口名称(以太网”)。
配置静态IP地址
使用以下命令格式设置IP、子网掩码、默认网关:

netsh interface ip set address name="接口名称" static IP地址 子网掩码 默认网关
示例:若要为“以太网”接口设置IP为168.1.100,子网掩码为255.255.0,网关为168.1.1,命令为:
netsh interface ip set address name="以太网" static 192.168.1.100 255.255.255.0 192.168.1.1
配置DNS服务器
DNS服务器需单独设置,命令格式如下:
netsh interface ip set dns name="接口名称" static DNS服务器地址 primary
示例:设置首选DNS为114.114.114,备用DNS为8.8.8:
netsh interface ip set dns name="以太网" static 114.114.114.114 primary netsh interface ip add dns name="以太网" 8.8.8.8 index=2
验证配置是否生效
输入ipconfig查看当前网络配置,确认IP地址、子网掩码、网关及DNS是否正确;或通过ping 网关地址测试网络连通性。

Linux系统:通过nmcli或ifconfig命令设置IP
Linux系统中,不同发行版(如Ubuntu、CentOS)的命令工具略有差异,以下以主流的nmcli(NetworkManager命令行工具)和传统ifconfig为例说明。
方法1:使用nmcli命令(推荐,适用于Ubuntu/CentOS 7+等)
nmcli是NetworkManager的命令行接口,支持动态和静态IP配置,操作更直观。
查看当前网络连接名称
输入命令:
nmcli connection show
会列出所有连接(如ens33、eth0等),记录需要配置的连接名称。
配置静态IP地址
使用以下命令格式设置IP、子网掩码(前缀长度)、网关:
nmcli connection modify "连接名称" ipv4.method manual ipv4.addresses "IP地址/前缀长度" ipv4.gateway "网关地址"
示例:为连接ens33设置IP为168.1.200,子网掩码255.255.0(前缀长度24),网关168.1.1:
nmcli connection modify ens33 ipv4.method manual ipv4.addresses "192.168.1.200/24" ipv4.gateway "192.168.1.1"
配置DNS服务器
nmcli connection modify ens33 ipv4.dns "DNS服务器地址"
示例:设置DNS为8.8.8和114.114.114:
nmcli connection modify ens33 ipv4.dns "8.8.8.8 114.114.114.114"
激活配置并生效
nmcli connection up ens33
验证配置
通过ip addr查看IP地址,ping 网关测试连通性,或nmcli connection show ens33查看详细配置。
方法2:使用ifconfig和route命令(传统方式,适用于旧版Linux)
部分旧版Linux系统(如CentOS 6)需通过ifconfig和route手动配置,但此方式重启后会失效,需写入配置文件永久生效。
临时配置IP地址
ifconfig eth0 192.168.1.150 netmask 255.255.255.0
配置默认网关
route add default gw 192.168.1.1
配置DNS
编辑/etc/resolv.conf文件,添加DNS地址:
echo "nameserver 8.8.8.8" >> /etc/resolv.conf
永久生效(需编辑配置文件)
以CentOS 6为例,编辑/etc/sysconfig/network-scripts/ifcfg-eth0文件,修改以下参数:
BOOTPROTO=static IPADDR=192.168.1.150 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8 ONBOOT=yes
保存后,重启网络服务:
service network restart
注意事项
- 权限问题:Windows需管理员权限运行cmd,Linux需root权限(或使用
sudo)。 - IP冲突:配置前需确认IP地址未被其他设备占用(可通过
ping IP地址测试)。 - 参数准确性:子网掩码、网关、DNS需与网络环境匹配,否则可能导致网络异常。
- 动态IP与静态IP切换:若需从静态IP切换为动态IP(DHCP),Windows可使用
netsh interface ip set address name="接口名称" dhcp;Linux可使用nmcli connection modify ens33 ipv4.method auto。
相关问答FAQs
问题1:Windows系统中通过命令设置IP后,提示“请求的操作需要提升”怎么办?
解答:此错误是由于命令提示符未以管理员身份运行,导致权限不足,需关闭当前cmd窗口,重新通过“以管理员身份运行”打开,再执行配置命令。
问题2:Linux中使用nmcli命令配置IP后,重启服务器配置失效,如何解决?
解答:nmcli配置默认是永久的,但若重启失效,可能是NetworkManager服务未开机自启,可执行systemctl enable NetworkManager设置开机自启,并确认配置文件中ipv4.method为manual(静态IP)且ONBOOT=yes,若仍无效,可检查/etc/NetworkManager/system-connections/目录下的连接配置文件,确保参数正确保存。
