服务器上修改物理地址和DNS服务器,本质是调整网卡的MAC地址和系统的域名解析配置,前者解决网络准入或IP绑定问题,后者解决域名解析异常或访问加速问题,两者操作路径不同,但都可通过系统设置或命令行完成。
动手前先分清:你要改的是哪张网卡
很多人在服务器上折腾MAC地址和DNS时,第一步就栽在“改错对象”上,一台服务器可能有多块网卡,物理机有板载网口和独立网卡,云服务器有虚拟网卡和弹性网卡,改之前先确认当前生效的网卡名称。
- 在Linux系统里,输入
ip addr查看所有网卡,带UP状态且有内网IP的那张就是你要操作的网卡。 - 在Windows系统里,打开“网络连接”窗口,找到标记为“已启用”的以太网适配器,右键查看属性确认。
行业共识认为,修改MAC地址前最好先备份原始配置,尤其是生产环境,一旦改错可能导致网络中断无法远程连接,建议通过带外管理(如iDRAC、IPMI)或本地控制台操作,避免把自己锁在门外。
Linux服务器修改物理地址:两种命令,一种永久一种临时
Linux下改MAC地址是运维日常操作,临时修改重启即失效,适合测试验证;永久修改需要写入配置文件,适合正式环境。
临时修改:用ip命令操作
# 先停用网卡,注意替换为你的实际网卡名 sudo ip link set eth0 down # 修改MAC地址,格式为XX:XX:XX:XX:XX:XX sudo ip link set eth0 address 00:16:3e:12:34:56 # 重新启用网卡 sudo ip link set eth0 up
改完用 ip addr show eth0 验证,确认MAC地址已变化,这种操作方式的好处是不写任何配置文件,风险可控。
永久修改:写进系统配置
不同发行版配置方式差异较大:
- CentOS/RHEL 7+:编辑
/etc/sysconfig/network-scripts/ifcfg-eth0,在文件中添加或修改MACADDR=00:16:3e:12:34:56,然后执行systemctl restart network。 - Ubuntu 18.04+(Netplan):编辑
/etc/netplan/01-netcfg.yaml,在对应网卡下添加macaddress: 00:16:3e:12:34:56,执行sudo netplan apply。 - Debian/Ubuntu(/etc/network/interfaces):添加
hwaddress ether 00:16:3e:12:34:56,重启网络服务。
设置完成后建议重启系统测试配置是否持久生效,有些云服务器厂商在控制台层面锁定了MAC地址修改,即使系统内改了也可能被云平台重置,这种情况只能通过后台的“网络配置”功能调整。

Windows Server修改DNS地址:图形界面和命令行都会才叫熟练
Windows Server的DNS设置相对直观,但生产环境中通过命令行批量修改更高效。
图形界面操作路径
打开“控制面板” → “网络和 Internet” → “网络连接” → 右键网卡选“属性” → 双击“Internet 协议版本 4 (TCP/IPv4)” → 选择“使用下面的 DNS 服务器地址”,填入首选和备用DNS。
如果服务器还配置了IPv6,需要单独在“Internet 协议版本 6 (TCP/IPv6)”中设置DNS。
命令行修改实测
用PowerShell可以一条命令搞定主备DNS:
# 修改主DNS为223.5.5.5,备DNS为114.114.114.114
Set-DnsClientServerAddress -InterfaceAlias "以太网" -ServerAddresses ("223.5.5.5","114.114.114.114")
查看当前生效的DNS配置:
Get-DnsClientServerAddress
国内服务器建议优先使用阿里DNS(223.5.5.5)、腾讯DNS(119.29.29.29)或114DNS(114.114.114.114),海外服务器可考虑Google DNS(8.8.8.8)和Cloudflare DNS(1.1.1.1),选择DNS服务商时考虑解析速度和防污染能力,境内服务器访问境内服务优先选国内DNS,海外业务场景选全球节点多的服务商。
改完DNS经常遇到“没生效”的坑
不少人在服务器上改完DNS后,发现 nslookup 解析的还是老地址,原因多半是缓存问题。
DNS缓存刷新命令汇总
| 系统 | 命令 | 说明 |
|---|---|---|
| Windows Server | ipconfig /flushdns |
清空系统DNS缓存 |
| Linux(systemd) | sudo systemd-resolve --flush-caches |
清理systemd-resolved缓存 |
| Linux(dnsmasq) | sudo systemctl restart dnsmasq |
重启dnsmasq服务 |
| Linux(nscd) | sudo systemctl restart nscd |
重启nscd缓存服务 |
如果刷新缓存后解析仍有问题,用 nslookup 域名 8.8.8.8 直连指定DNS测试,能判断是服务器配置错误还是DNS服务商自身的问题。
检查系统是否被“劫持”了DNS
有些服务器安装安全软件后,会强制锁定DNS设置,只需两步验证:
- 查看本机DNS配置指向哪里。
- 检查防火墙或安全组是否放行了UDP 53端口。

UDP 53端口不通会导致DNS解析超时,但TCP 53端口往往被忽略,部分公共DNS支持TCP查询,如果UDP被限制可以改用TCP。
Mac地址和DNS同时改:云服务器和物理机的差异化操作
物理服务器怎么修改物理地址都行,但云服务器和虚拟机有额外约束。
- 云服务器(简米云、酷番云、华为云):控制台通常不提供修改MAC地址的选项,原因在于云平台的网络架构依赖MAC地址做流量转发和计费,强行修改会导致网络不通,如果遇到IP与MAC绑定的问题,直接在控制台“更换弹性网卡”或“修改私有IP”更实际。
- VMware虚拟机:在VMX配置文件中添加
ethernet0.address = "00:50:56:XX:XX:XX"和ethernet0.addressType = "static",重启虚拟机生效。 - 物理服务器:修改BIOS中板载网卡的MAC地址需要在开机自检时进入网卡配置界面(通常按Ctrl+S),但多数场景下系统内修改已经够用。
有些用户搜索“服务器修改DNS地址 价格”,其实这项操作本身不产生费用,但如果你找服务器托管服务商代操,对方可能收取远程技术支持费,市场上这类单次操作收费一般在50元至200元之间,具体看服务商定价,这部分费用在服务器运维外包报价里通常列在“工单服务”项下。
修改操作出错后的应急恢复
改MAC地址或DNS导致服务器失联时,别慌,按顺序排查。
恢复MAC地址的应急思路
- 如果有带外管理(IPMI/iDRAC),登录后进系统改回原值。
- 完全无法登录时,联系机房或云厂商工单,物理机可以要求重启到救援模式,云服务器可以提工单重置网络配置。
恢复DNS的应急思路
- Linux下修改
/etc/resolv.conf后出错,该文件通常由DHCP或systemd-resolved动态生成,重启网络服务或直接编辑为初始配置即可恢复。 - Windows Server下误改DNS,用
netsh interface ip set dns "以太网" static 223.5.5.5可以强制写回默认值。
改之前先备份配置文件
# Linux备份网卡配置 cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0.bak # Windows备份DNS配置 netsh interface ip show config > dns_backup.txt
备份文件是一个好习惯,运维事故里相当一部分是由配置修改后无法回滚导致的。
Mac地址和DNS配置验证清单
改完一切后,逐项检查,输出一条明确的验证路径。

- 使用
ping 网关IP确认二层和三层连通性。 - 使用
ping 公网IP(如223.5.5.5)确认路由正常。 - 使用
nslookup www.baidu.com确认DNS解析返回正常IP。 - 使用
curl -I https://www.baidu.com确认HTTP访问无异常。 - 检查系统日志,Linux执行
dmesg | grep eth0,Windows执行Get-EventLog -LogName System | Where-Object { $_.EventID -eq 4201 },确认网卡无异常报错。
多花三分钟做完整验证,比后续半夜爬起来处理告警要划算得多。
知识延伸:修改物理地址的适用场景和限制
部分用户因为账号封禁或网络访问限制想修改物理地址,但需要明确一点:MAC地址只影响同一二层网络内的通信,跨网段访问时路由器看到的是IP地址,MAC地址被封装在以太网帧中,过了三层设备就被丢弃了。
常见的合法修改场景包括:
- 公司网络做了MAC准入,需要匹配授权设备才能接入。
- 运营商宽带绑定MAC地址,更换路由器后需要克隆旧MAC。
- 软件授权绑定网卡,更换硬件后需要保持原有授权。
- 测试环境模拟多台设备,方便网络实验。
行业专家指出,MAC地址由IEEE分配了厂商前缀,修改时不要使用已分配的知名厂商前缀(如华为、思科的OUI),否则可能触发现有网络设备的防御策略,建议使用 00:16:3e(Xen虚拟化)等虚拟化保留段,或在VMware环境中使用 00:50:56 段,这些地址段在多数网络环境中不易被设备识别为伪造地址。
常见问题速查
服务器修改MAC地址后网络不通,重启能恢复吗
重启通常不能恢复,因为系统启动时会读取网卡驱动和配置文件,如果配置文件中的MAC地址与网络环境冲突,重启后依然不通,需要先进入救援模式或带外管理,把配置改回原值,确认网络恢复后再尝试二次修改。
修改DNS服务器后域名解析变慢,是DNS的问题吗
DNS解析变慢不一定是服务器本身的问题,先测试 dig @223.5.5.5 你的域名 对比不同DNS服务器的响应时间,如果本地解析慢但公共DNS快,问题出在系统配置或本地网络链路,如果所有DNS都慢,就要检查域名权威服务器(NS)的响应能力,据工信部近年来发布的全国网络性能监测数据,国内公共DNS的平均解析响应时间在20ms到50ms之间,如果差距过大确实需要排查。