Linux虚拟机如何修改IP地址?

修改前的准备

  1. 查看当前网络配置
    终端执行:

    ip addr show     # 查看网卡名称(如ens33、eth0)
    ifconfig         # 若未安装,运行`sudo apt install net-tools`(Debian/Ubuntu)
  2. 记录关键信息
    • 目标IP地址、子网掩码(如255.255.0/24)、网关(如168.1.1
    • DNS服务器(如8.8.8

临时修改IP(重启失效)

方法1:使用ip命令

sudo ip addr add 192.168.1.100/24 dev ens33  # 添加新IP(替换为你的IP和网卡名)
sudo ip addr del 192.168.1.101/24 dev ens33  # 删除旧IP(如有)
sudo ip route add default via 192.168.1.1    # 设置默认网关

方法2:使用ifconfig(旧版工具)

sudo ifconfig ens33 192.168.1.100 netmask 255.255.255.0
sudo route add default gw 192.168.1.1

⚠️ 临时修改适用于测试,重启后恢复原配置。


永久修改IP(不同发行版操作)

Ubuntu 18.04+ / Debian(使用Netplan)

  • 编辑YAML配置文件(路径可能不同):
    sudo nano /etc/netplan/01-netcfg.yaml
    ```示例:
    ```yaml
    network:
      version: 2
      ethernets:
        ens33:
          dhcp4: no             # 关闭DHCP
          addresses: [192.168.1.100/24]
          gateway4: 192.168.1.1
          nameservers:
            addresses: [8.8.8.8, 1.1.1.1]
  • 应用配置:
    sudo netplan apply

CentOS/RHEL 7+ / Fedora(使用NetworkManager)

  • 修改连接配置(替换ens33为你的网卡名):
    sudo nmcli con mod ens33 ipv4.addresses 192.168.1.100/24
    sudo nmcli con mod ens33 ipv4.gateway 192.168.1.1
    sudo nmcli con mod ens33 ipv4.dns "8.8.8.8"
    sudo nmcli con mod ens33 ipv4.method manual
    sudo nmcli con down ens33 && sudo nmcli con up ens33  # 重启连接

传统配置(CentOS 6/旧版系统)

  • 编辑配置文件:
    sudo nano /etc/sysconfig/network-scripts/ifcfg-ens33
  • 修改以下参数:
    BOOTPROTO=static
    IPADDR=192.168.1.100
    NETMASK=255.255.255.0
    GATEWAY=192.168.1.1
    DNS1=8.8.8.8
    ONBOOT=yes
  • 重启网络服务:
    sudo service network restart   # CentOS 6
    sudo systemctl restart NetworkManager # CentOS 7+

验证配置

  1. 检查IP和路由
    ip addr show ens33      # 确认IP生效
    ip route show           # 检查网关
    ping 8.8.8.8           # 测试外网连通性
    nslookup google.com     # 验证DNS解析
  2. 重启虚拟机
    sudo reboot

    重启后再次执行上述命令,确保配置持久化。


常见问题解决

  • 网卡未启动:检查配置文件中的ONBOOT=yes
  • IP冲突:使用arping -I ens33 192.168.1.100检测IP是否被占用。
  • 云虚拟机(AWS/Azure)注意:部分云平台要求通过控制台修改网络配置,并禁用系统内手动修改。
  • NetworkManager冲突:若使用传统配置,关闭NetworkManager:
    sudo systemctl stop NetworkManager
    sudo systemctl disable NetworkManager

专业建议

  1. 备份配置文件:操作前执行cp /etc/netplan/01-netcfg.yaml ~/backup.yaml
  2. 使用工具:新手建议用nmtui(文本图形界面)减少错误。
  3. 防火墙:若无法访问,检查防火墙规则(sudo ufw allow 22/tcp)。

引用说明:本文参考Linux官方文档(Netplan、NetworkManager)及Red Hat/CentOS系统管理指南,确保内容符合最佳实践,操作需root权限,请谨慎执行。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8367.html

(0)
酷番叔酷番叔
上一篇 2025年7月23日 19:56
下一篇 2025年7月23日 20:15

相关推荐

  • 如何查看linux的开机启动项

    使用systemctl list-units –type=service命令查看

    2025年8月19日
    12400
  • Linux如何查看网卡信息?

    在Linux系统中,查看网卡信息是网络配置和故障排查的基础操作,无论是日常运维还是系统管理,掌握多种查看网卡的方法都能帮助我们快速定位问题,本文将详细介绍通过命令行工具、图形界面、配置文件等多种方式查看Linux网卡信息,并解释关键输出含义,最后附上常见问题解答,命令行工具查看网卡信息命令行是Linux环境下最……

    2025年9月20日
    10000
  • 如何查看Linux进程状态?ps、top命令详解?

    在Linux系统中,进程是程序执行的基本单位,查看进程状态是系统管理和故障排查的核心操作,Linux进程状态通过特定标识符描述,可通过多种命令工具实时或静态获取,帮助用户监控进程运行情况、资源占用及父子关系,本文将详细介绍查看Linux进程状态的各类方法、工具及参数使用,并结合实例说明输出含义,Linux进程状……

    2025年9月26日
    10500
  • Debian/Ubuntu安装卡在驱动怎么办?

    在Linux操作系统中,虽然拍照功能不如移动设备或Windows/macOS那样直观,但通过多种工具和方法,用户完全可以轻松调用摄像头进行拍照,以下是详细的操作指南,涵盖命令行工具、图形界面应用及常见问题解决方案:命令行工具(适合快速抓拍/脚本调用)fswebcam最常用的命令行拍照工具,支持分辨率调整和延时拍……

    2025年8月8日
    11300
  • Linux如何创建FTP账户并设置密码?

    在Linux系统中创建FTP账户并设置密码是常见的文件共享需求,通常使用vsftpd(Very Secure FTP Daemon)作为FTP服务器软件,它轻量、安全且配置灵活,以下将详细介绍在Linux环境下创建FTP账户及密码的完整步骤,包括环境准备、安装配置、用户管理、权限控制及测试验证等内容,确保不同层……

    2025年10月4日
    10400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信