专注Java教育14年 全国咨询/投诉热线:444-1124-454
赢咖4LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 Linux更改ip地址的方法

Linux更改ip地址的方法

更新时间:2021-12-16 10:50:00 来源:赢咖4 浏览1706次

ITworld.com –

Linux 系统上更改 IP 地址涉及使用 ifconfig 命令更改 IP 地址和修改将使更改永久化的文件。该过程与您在 Solaris 系统上遵循的过程非常相似,只是必须修改一组不同的文件。采取的正确步骤还取决于您使用的特定 Linux 发行版。例如,Debian 系统使用与 RedHat 系统不同的文件来存储网络配置。

首先,我们使用 ifconfig 命令来修改活动 IP 地址。像这样的命令进行更改:

# ifconfig eth0 inet 10.2.7.11

ifconfig -a 命令将列出当前设置并确认您的网络设备是(或不是)eth0。

如果系统需要更改其 IP 地址,则它可能正在加入不同的子网。如果是这样,它也需要切换其默认路由。更改默认路由时要小心,不要中断您用来进行更改的连接。要么通过控制台连接进行此更改,要么确保在完成工作之前与系统的连接没有中断。

# 路由添加默认 gw 1​​0.2.7.1
# 路由删除默认 gw 1​​0.1.7.1

您需要修改以使 IP 地址永久更改的文件包括 /etc/hosts 文件和 /etc/sysconfig/network-scripts 目录中为特定网络接口设置参数的文件。通常,需要修改的是 /etc/sysconfig/network-scripts/ifcfg-eth0 文件。该文件包含描述网络接口的信息,包括 IP 地址、网络掩码和 MAC 地址。此文件还指示 IP 地址是静态的还是由 DHCP 分配的。以下是使用静态 IP 地址时的文件示例:

设备=eth0
BOOTPROTO=静态
IPADDR=10.2.7.11
网罩=255.255.255.0
HWADDR=00:02:B1:CC:11:32
开机=是

如果您没有 /etc/sysconfig 目录,您的网络配置参数可能会存储在一个名为 /etc/network/interfaces 的文件中——就像在 Debian、Ubuntu 和相关发行版上一样。该文件将与以下示例中显示的内容类似。

iface eth0 inet 静态
地址 10.2.7.11
网络掩码 255.255.255.0
网络 10.2.7.0
广播 10.2.7.255
网关 10.2.7.1

下面的脚本可用于检测要修改的文件,然后进行所需的更改。请注意,它需要旧的和新的 IP 地址以及可选的新默认路由。该脚本不检查参数,因此必须以正确的顺序添加它们。

#!/bin/bash
#=============================================
# Get IP info from command line
#=============================================
if [ $# -lt 2 ]; then
    echo -n "Usage: $0 oldIP newIP [defaultRouter]"
    exit 1
fi
oldIP=$1
newIP=$2
gw=$3
#=============================================
# Switch IP address for network interface
#=============================================
ifconfig eth0 inet $newIP
perl -p -i -e "s/^oldIP/$newIP/" /etc/hosts
if [ -f /etc/sysconfig/network-scripts/ifcfg-eth0 ]; then
    perl -p -i -e "s/^IPADDR=$oldIP/IPADDR=$newIP/" \
        /etc/sysconfig/network-scripts/ifcfg-eth0
fi
if [ -f /etc/network/interfaces ]; then
    perl -p -i -e "s/address $oldIP/address $newIP/" \
        /etc/network/interfaces
fi
#=============================================
# Re-add default route if provided
#=============================================
if [ $3 ]; then
    route add default gw $gw
fi

如果您当前通过 DHCP 获取 IP 地址,此脚本不会将您移动到静态地址。大家如果想了解更相关知识,可以关注赢咖4的Java赢咖4在线学习,里面的课程内容全面,从入门到精通,适合没有基础的小白学习,希望对大家能够有所帮助。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>