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系统如何设置时间同步?NTP服务配置方法指南?

    在Linux系统中,时间同步是确保服务器、集群或个人设备时间准确的关键操作,尤其对于日志分析、安全认证、分布式任务调度等场景至关重要,Linux系统通常通过NTP(Network Time Protocol)或其改进版Chrony实现时间同步,以下是详细设置步骤及注意事项,时间同步工具选择Linux中常见的时间……

    2025年9月23日
    4800
  • Linux中参数如何正确添加?

    在Linux系统中,参数添加是日常管理和运维中的核心操作,涉及命令行执行、环境配置、服务管理等多个场景,不同场景下的参数添加方法存在差异,需根据具体需求选择合适的方式,本文将详细解析Linux中常见参数添加的方法、场景及注意事项,命令行参数传递命令行参数是直接在命令后附加的选项或值,用于控制命令的执行行为,Li……

    2025年10月4日
    2800
  • 如何在Linux中安全删除所有以m结尾的文件?

    在Linux中,使用命令行工具如find或rm精确删除所有文件名以字母m结尾的文件,操作时需谨慎测试命令,避免误删重要数据,确保安全高效。

    2025年6月15日
    8200
  • Linux下如何修改或升级NASM版本?

    在Linux系统中,NASM(Netwide Assembler)是广泛使用的汇编器,尤其在系统级编程、逆向工程和底层开发中扮演重要角色,随着项目需求的变化,可能需要升级或降级NASM版本以支持新的指令集、语法特性或修复兼容性问题,本文将详细介绍在Linux环境下修改NASM版本的完整流程,包括版本查询、旧版本……

    2025年9月28日
    3600
  • Systemd启动为何变慢?

    理解 Linux 中的”刷新”在 Linux 中,“刷新”并非单一操作,而是根据场景分为四类:图形界面刷新:重载桌面或应用视图系统级刷新:同步数据、清理缓存或重载配置网络配置刷新:更新网络设置终端显示刷新:重置命令行显示图形界面刷新(桌面环境)适用于 GNOME、KDE 等桌面用户:快捷键刷新按 F5 或 Ct……

    2025年7月12日
    6200

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信