首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >linux网络接口配置和主机名

linux网络接口配置和主机名

原创
作者头像
陈不成i
修改于 2021-05-26 10:05:30
修改于 2021-05-26 10:05:30
2.4K0
举报
文章被收录于专栏:ops技术分享ops技术分享

ifconfig

该命令虽然在man文档中被说明已废弃,但大众显然无法忘记它。ifconfig命令是一个接口配置命令,但更多的被用来显示已激活的网络接口信息。

  1. ifconfig [ interface | -a ]
  2. ifconfig interface options
  3. 选项说明:
  4. interface:指定被操作的网络接口名,如eth0
  5. up :激活指定的网络接口,如果在命令行中为网络接口分配了IP地址,则默认会up
  6. down :将指定的接口设置为down状态
  7. [-]arp :启用或禁用该接口上使用ARP协议,如"ifconfig eth0 -arp"
  8. mtu N :设置指定接口的最大传输单元(MTU)
  9. netmask :设置该接口的IP netmask,默认会采用A/B/C类地址的掩码位数
  10. address :要分配给该接口的IP地址

ifconfig示例:

  1. [root@xuexi ~]# ifconfig eth0:1 192.168.100.20 netmask 255.255.255.0 up # 添加IP地址
  2. [root@xuexi ~]# ifconfig eth0:1 192.168.100.20/24 up # 也可使用CIDR格式掩码
  3. [root@xuexi ~]# ifconfig eth1 up # 激活该网络接口
  4. [root@xuexi ~]# ifconfig eth1 down # 临时down掉eth1接口
  5. [root@xuexi ~]# ifconfig eth1 -arp # 抑制eth1上的arp
  6. [root@xuexi ~]# ifconfig eth1 arp # 启用eth1上的arp

需要注意的是,ifconfig所有的配置都是应用于内核的,所以只会临时生效,重启网络服务后会立即失效。

对于slave地址,即别名地址,若要永久生效,应该建立对应的别名接口配置文件,如/ets/sysconfig/network-scripts/ifcfg-eth0:0,然后在该文件中的DEVICE关键字上给定eth0:0名称,该DEVICE项必须配置正确。

ifcfg

用法很简单。

  1. ifcfg DEV [[add|del [ADDR[/LEN]] | stop]
  2. add - add new address
  3. del - delete address
  4. stop - completely disable IP

例如:

  1. [root@xuexi ~]# ifcfg eth1:0 add 192.168.100.20/24 # 添加一个地址
  2. [root@xuexi ~]# ifcfg eth1:0 del 192.168.100.20 # 删除一个地址
  3. [root@xuexi ~]# ifcfg eth1 stop # 临时禁用eth1

hostname命令

用于设置主机名,但也有几个其它好用的功能。

  1. hostname [-I] [-f] [-d] [-s] [hostname]
  2. 选项说明:
  3. -I :获取该主机上所有非环回IP地址,该选项不依赖于主机名解析
  4. -f,--fqdn :获取fqdn
  5. -d,--domain:获取fqdn的域名部分,等价于命令dnsdomainname
  6. -s,--short :获取fqdn的主机名部分,严格地说是获取第一个"."前的部分,例如"www.baidu.com"将获取为"www"

使用-I选项可以直接获取该主机上的所有IP地址,包括别名地址,这在某些时候太方便了。

  1. [root@xuexi ~]# hostname -I
  2. 192.168.100.54 172.16.10.10

hostname修改的主机名为临时生效,它修改的其实是/proc/sys/kernel/hostname文件。

  1. [root@xuexi ~]# cat /proc/sys/kernel/hostname
  2. xuexi.longshuai.com

虽然在man文档中说有个永久有效的选项(-b),但测试时却毫无效果。要想永久生效,需要修改配置文件/etc/hostname(CentOS 7)或/etc/sysconfig/network(CentOS 6)。例如在CentOS 7上:

  1. [root@xuexi ~]# echo "ma.longshuai.com" >/etc/hostname

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • ifconfig
  • ifcfg
  • hostname命令
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档