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系统是否已设置为UTF-8编码?

    在Linux系统中,UTF-8是一种广泛使用的字符编码,能够兼容全球大多数语言的字符,确保多语言环境下的正常显示和处理,查询系统是否支持UTF-8编码,通常需要从环境变量、系统locale配置、文件系统编码及终端编码等多个维度进行验证,以下是具体操作方法和步骤,通过环境变量检查当前编码设置Linux系统的语言和……

    2025年10月8日
    6700
  • Linux如何删除连接?软连接与硬连接的正确方法是什么?

    在Linux操作系统中,“连接”是一个广义的概念,可能涉及网络连接(如TCP/UDP套接字连接、端口监听)、文件系统中的符号链接(软链接)、设备连接(如USB、块设备)、数据库连接或服务连接等,不同类型的连接删除方法差异较大,需根据具体场景选择合适的方式,本文将分场景详细介绍Linux中各类连接的删除方法及注意……

    2025年9月9日
    7200
  • Linux系统启动时间如何查看?优化方法及影响因素有哪些?

    Linux系统启动时间是指从按下电源键到系统完全可用(用户可登录或操作)所经历的时长,优化启动时间能显著提升用户体验,尤其对服务器和日常使用场景至关重要,Linux启动流程可分为多个阶段,每个阶段都可能影响整体速度,了解这些阶段及优化方法是缩短启动时间的关键,Linux启动流程及各阶段影响因素Linux启动过程……

    2025年9月19日
    7800
  • 禁用IPv6能解决服务器问题?

    为什么需要启用 IPv6?IPv6 是下一代互联网协议,解决了 IPv4 地址枯竭问题,提供更大的地址空间(如 2001:db8::1)、更高的安全性和效率,随着全球 IPv4 地址耗尽,启用 IPv6 已成为网络优化的关键步骤,本指南将详细介绍在 Linux 系统中启用 IPv6 的方法,检查当前 IPv6……

    2025年6月23日
    10700
  • 如何更新软件包列表?,软件包需要更新了吗?,怎样更新软件包列表?,你的软件包该更新了吗?

    在Linux系统中安装FFmpeg是处理音视频的常见需求,以下是针对不同发行版的详细安装指南,所有步骤均经过验证,确保安全可靠:通过包管理器安装(推荐)Ubuntu/Debian 系# 安装FFmpeg(含核心库)sudo apt install ffmpeg -y# 验证安装ffmpeg -versionCe……

    2025年7月24日
    8900

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信