linux中如何使etchosts文件中的IP地址自动更新为当前系统的IP

linux中如何使etchosts文件中的IP地址自动更新为当前系统的IP,第1张

1首先在Linux系统下设置静态的IP地址

vim /etc/network/interfaces #编辑网网卡配置文件

auto lo

iface lo inet loopback

auto eth0 #开机自动连接网络

iface eth0 inet static #static表示使用固定ip,dhcp表述使用动态ip

address 19216821168 #设置ip地址

netmask 2552552550 #设置子网掩码

gateway 192168212 #设置网关

ctrl+o #保存配置

ctrl+x #退出

2在/etc/profile 加入脚本

vim /etc/profilegrep -v "hostname(指定的域名)" /etc/hosts > ~/hosts_temp 

cat ~/hosts_temp > /etc/hosts 

LC_ALL=C ifconfig | grep 'inet addr:'| grep -v '127001' |cut -d: -f2 | awk '{ print $1}' >> /etc/hosts

3重启网络使设置生效

/etc/initd/networking restart #重启网络

Linux修改IP地址需要修改配置文件/etc/network/interfaces。

如果是设置成DHCP自动获取IP地址,在配置文件中加入这样的内容:

auto

eth0

iface

eth0

inet

dhcp

然后保存退出,需要重启网络(不是重启主机)使配置生效,重启网络命令:

/etc/initd/networking

restart

重启网络后,执行dhclient

eth0命令就可以获取IP地址了。

注意:配置文件里的eth0是网卡的名字,需要你自己主机上的网卡名字(无线网卡用iwconfig可以看到,一般有线网卡用ifcongfig可以看到)。

auto

eth0这一句表示开机网卡设置就生效。

如果是设置成静态IP地址,需要写入以下内容:

auto

eth0

iface

eth0

inet

static

address

这里是静态IP

netmask

这里是子网掩码

gateway

这里是网关地址

network

这里是所在网段的网络地址

broadcast

这里是所在网段的广播地址

保存退出后也要重启网络。

配置 静态 ip

配置网络需要的文件 ifcfg-eth0文件 路径:eth/sysconfig/network-scripts/ifcfg-eth0

ifcfg-eth0文件配置解析:

TYPE=Ethernet

DEVICE=eth0

BOOTPROTO=none

ONBOOT=yes

IPADDR=100127

NETMASK=2552552550

GATEWAY=10011

BROADCAST=10101255

HWADDR=00:0C:29:13:5D:74

PEERDNS=yes

DNS1=100141

USERCTL=no

NM_CONTROLLED=no

IPV6INIT=yes

IPV6ADDR=FD55:faaf:e1ab:1B0D:10:14:24:106/64

1 配置参数说明

注:这些参数值不区分大小写,不区分单引号和双引号,甚至可以不用引号。

TYPE:配置文件接口类型。在/etc/sysconfig/network-scripts/目录有多种网络配置文件,有Ethernet 、IPsec等类型,网络接口类型为Ethernet。

DEVICE:网络接口名称

BOOTPROTO:系统启动地址协议

none:不使用启动地址协议

bootp:BOOTP协议

dhcp:DHCP动态地址协议

static:静态地址协议

ONBOOT:系统启动时是否激活

yes:系统启动时激活该网络接口

no:系统启动时不激活该网络接口

IPADDR:IP地址

NETMASK:子网掩码

GATEWAY:网关地址

BROADCAST:广播地址

HWADDR/MACADDR:MAC地址。只需设置其中一个,同时设置时不能相互冲突。

PEERDNS:是否指定DNS。如果使用DHCP协议,默认为yes。

yes:如果DNS设置,修改/etc/resolvconf中的DNS

no:不修改/etc/resolvconf中的DNS

DNS{1, 2}:DNS地址。当PEERDNS为yes时会被写入/etc/resolvconf中。

NM_CONTROLLED:是否由Network

Manager控制该网络接口。修改保存后立即生效,无需重启。被其坑过几次,建议一般设为no。 yes:由Network Manager控制

no:不由Network Manager控制

USERCTL:用户权限控制

yes:非root用户允许控制该网络接口

no:非root用户不运行控制该网络接口

IPV6INIT:是否执行IPv6

yes:支持IPv6

no:不支持IPv6

IPV6ADDR:IPv6地址/前缀长度

2配置生效

为了使网络配置永久有效,就需要在/etc/sysconfig/network-scripts/下修改网络接口配置文件。但是,这些文件修改后,并不能立即生效。有两种方式使修改文件的网络配置生效:

(1) 执行service network restart命令,重启网络服务(推荐)

(2) 重启计算机

配置 动态 ip(自动分配)

使用chkconfig命令让网络服务在系统启动级别是2345时默认启动。

chkconfig –level 2345 network on

修改ifcfg-eth0文件,设置ONBOOT的值为yes,让网络服务启动时使用该网卡。设置BOOTPROTO的值为dhcp,让网卡从DHCP服务器自动获取IP地址。

修改ifcfg-eth0文件,设置ONBOOT的值为yes,让网络服务启动时使用该网卡。设置BOOTPROTO的值为dhcp,让网卡从DHCP服务器自动获取IP地址。

使用 命令 修改 vi /etc/sysconfig/network-scripts/ifcfg-eth0

ONBOOT=yes

BOOTPROTO=dhcp

临时 配置 ip

使用命令来执行 ifconfig eth0 19216801(自己要设置的IP)这个命令是更改主机IP >

第一步:激活网卡

Linux系统装好后默认的网卡是eth0,用下面的命令将这块网卡激活。

代码如下 复制代码

# ifconfig eth0 up

第二步:设置网卡进入系统时启动

想要每次开机就可以自动获取IP地址上网,就要设置网络服务在系统启动时也启动。Linux有一点与windows不同的是很多服务默认是停止的,而且你 在某次使用该服务时启动这个服务,但是没设置它为默认启动,则下次进入系统这个服务依然是停止的。下面是设置网络服务在系统启动时也启动的方法。

使用chkconfig命令让网络服务在系统启动级别是0123456时默认启动。

代码如下 复制代码

# chkconfig –level 0123456 network on

第三步:修改网卡文件ifcfg-eth0

修改ifcfg-eth0文件,设置ONBOOT的值为yes,让网络服务启动时使用该网卡。设置BOOTPROTO的值为dhcp,让网卡从DHCP服务器自动获取IP地址。

代码如下 复制代码

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

ONBOOT=yes

BOOTPROTO=dhcp

静态IP地址配置

配置静态IP地址上网与动态IP地址上网同出一辙,修改ifcfg-eth0,然后用命令service network retart重启网络服务。

例:

代码如下 复制代码

DEVICE=eth0

IPADDR=1921681100

NETMASK=2552552550

GATEWAY=19216811

DNS=8888

BOOTPROTO=static

ONBOOT=yes

第一种:使用命令修改(直接即时生效,重启失效)

代码如下 复制代码

#ifconfig eth0 19216801 netmask 2552552550 up

说明:

eth0是第一个网卡,其他依次为eth1,eth

19216801是给网卡配置的第一个网卡配置的ip地址

netmask 2552552550 配置的是子网掩码

up是表示立即激活

ifconfig的更多参数说明查看相关帮助

代码如下 复制代码

gateway:

# route add default gw 192168301 eth0

dns:

# vi etc/resolvconf

nameserver 202131801

nameserver 202131805

如果要重起生效,就把这些写到起动脚本 rclocal中

第二种:修改配置文档(需要重启网络配置,永远生效)

一、修改IP地址

手动改/etc/sysconfig/network-scripts/ifcfg-eth0文件 #第二块网卡:vi /etc/sysconfig/network-scripts/ifcfg-eth1

代码如下 复制代码

DEVICE=eth0 #物理设备名

IPADDR=192168110 #IP地址

NETMASK=2552552550 #掩码值

NETWORK=19216810 #网络地址(可不要)

BROADCAST=1921681255 #广播地址(可不要)

GATEWAY=19216811 #网关地址

ONBOOT=yes # [yes|no](引导时是否激活设备)

USERCTL=no #[yes|no](非root用户是否可以控制该设备)

BOOTPROTO=static #[none|static|bootp|dhcp](引导时不使用协议|静态分配|BOOTP协议|DHCP协议)

注:单网卡绑定两个IP

Linux的设备配置文件存放在/etc/sysconfig/network-scripts里面,

对于以太网的第一个设备,配置文件名一般为ifcfg-eth0

如果需要为第一个设备绑定多一个IP地址,

只需要在/etc/sysconfig/network-scripts目录里面创建一个名为ifcfg-eth0:0的文件,

内容样例为:

代码如下 复制代码

DEVICE="eth0:0"

IPADDR="21110010119"

NETMASK="2552552550"

如果需要再绑定多一个IP地址,只需要把文件名和文件内的DEVICE中的eth0:x加一即可。LINUX最多可以支持255个IP别名。

其中的DEVICE为设备的名称,IPADDR为此设备的IP地址,NETMASK为子网掩码,ONBOOT表示在启动时自动启动。

打文件/etc/sysconfig/network-scripts/ifcfg-eth0(用文本编辑器简单些)

找BOOTPROTO="none"项

改BOOTPROTO="dhcp"

重启网口:

命令行打ifconfig

eth0

down

再打ifconfig

eth0

up

试试应该行~~祝运

linux加入域是可以做的,相关资料看看《linux服务器配置全程实录》,ip配置可以修改/etc/sysconfig/network-scripts/ifcfg-eth0

命令配置是ifconfig

网卡

ip

netmask

getway

相关参数查阅

man

ifconfig

安装DHCP服务,以Centos7为例:

1、yum -y install dhcp

2、vim  /etc/dhcp/dhcpdconf

3、修改成以下:

subnet 19216810 netmask 2552552550 {

range 192168111 1921681240;        #自动分配IP范围

next-server 192168110;                #PXE引导器主机地址

filename "pxelinux0";             #PXE启动文件地址

}

4、启动系统服务dhcpd,并设置开机自启

systemctl restart dhcpd

systemctl enable dhcpd

这个是完整版本的PXE教程网页链接还有什么不明白的建议楼主看一下。

以上就是关于linux中如何使/etc/hosts文件中的IP地址自动更新为当前系统的IP全部的内容,包括:linux中如何使/etc/hosts文件中的IP地址自动更新为当前系统的IP、Centos如何设置IP地址,LINUX怎么修改IP地址、linux配置ip_静态ip/动态ip/临时ip的配置方法步骤等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9538107.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存