ifconfig命令
如何设置ip以及查看ip相关信息呢?
使用ifconfig命令
语法格式:
ifconfig :不加任何选项表示只显示接口为up状态的接口信息
Ifconfig -a:表示显示所有接口的接口信息,不管该接口是up还是down都显示
使用ifconfig命令配置ip的方法有两种:
方法一、Ifconfig interface [ip/netmask] [up|down]
表示为该接口配置ip和掩码,并启动或关闭该接口
例如:ifconfig eth0 192.168.0.120/24 up
方法二、ifconfig interface ip-address netmask 掩码 [up|down]
表示为该接口配置ip和掩码,并启动或关闭该接口
其中netmask为关键字
例如:ifconfig 192.168.0.110 netmask 255.255.255.0 up
方法二、ifconfig interface ip-address netmask 掩码 [up|down]
表示为该接口配置ip和掩码,并启动或关闭该接口
其中netmask为关键字
例如:ifconfig 192.168.0.110 netmask 255.255.255.0 up
不管使用哪种方法配置ip,ip都会立即生效,但不会永久生效,也就是说一旦网络服务重启或者主机重启,配置命令就会失效。
重启网络服务的方式在RHEL5和RHEL6上不相同
在RHEL5的环境下重启网络服务的命令为:/etc/init.d/network/{start|stop|restart|status}
在RHEL6的环境下重启网络服务的命令为:/etc/init.d/network/{start|stop|restart|status}
其中这些命令的意思为:
start:启动网络服务
stop:停止网络服务
restart:重启网络服务
status:查看网络所处的状态
网络的配置文件是/etc/sysconfig/network
第一行表示是否启用网络功能
第二行表示是否启用ipv6功能
第三行表示当前系统的主机名
刚刚说过在使用ifconfig配置的ip不会永久有效,要想永久生效,必须将命令写入到配置文件中去。
网络接口的配置文件为:/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME
其中INTERFACE_NAME为接口名称,所以每一个接口都会对应着一个配置文件
其中配置文件主要内容为:
DEVICE=#:关联的接口名称,与INTERFACE_NAME保持一致
BOOTPROTO={static|none|dhcp|bootp}:引导协议,表示使用哪种方式获取ip
static|none:使用静态方式获取
dhcp:使用dhcp协议获取
IPADDR=#:IP地址
NETMASK=#:子网掩码
GATEWAY=#:设定默认网关
ONBOOT={yes|no}:表示开机是否激活此网卡
HWADDR=#:设定硬件地址,也就是MAC地址,要与硬件中的地址保持一致;此行可省略
USERCTL={yes|no}:是否允许普通用户控制此接口
PEERDNS={yes|no}:在BOOTPROTO为dhcp时是否接受由DHCP服务器指定的DNS地址。
要想让配置文件立即生效,可以重启网络服务或者重启主机。
ip命令
上述主要介绍了如何使用ifconfig命令来配置ip,及查看相关信息的。其实ifconfig是一种比较老的指令。在这里将介绍另一种配置ip的命令-------ip命令
ip命令结合了ifconfig和route的指令,因此功能更加的强大
语法格式:
ip link:查看网络接口(二层地址)的属性信息及开启或者关闭网络接口
ip [-s] link show:查看该装置上所有的网络接口信息
-s:显示该装置的统计数据(statistics),例如接受包和发送出去的包的信息
ip link set INTERFACE_NAME [up|down] :开启或关闭某个接口
例如:ip link set eth0 down
ip addr/address :给某个接口配置ip或者删除ip
ip addr/address [add|del|flush|show] [IP-ADDRESS/mask] [dev 接口名称] [to PREFIX ]
add:给某个接口增加ip。
del:删除某个接口的地址。如:ip addr del 3.3.3.3/24 dev eth1.
show:(用来查看三层信息的)查看某个接口的ip信息。如果后面没有接指定接口,则显示所有接口的ip信息。
flush:清除某个接口的ip地址。如:ip addr flush eth1.
IP-ADDRESS/mask:ip地址和掩码
PREFIX:匹配地址的前缀或网络地址前缀
ip route:设定路由
ip route [show|add|del] [ip或者网段] [via gateway] [dev 接口名称]
show:显示路由表
add:增加路由
del:删除路由。如:ip route add 4.4.4.0/24.
Via :下一跳,及从哪个网关出去
注意:使用ip route命令来设定路由时,其网段必须严格匹配。如:ip route add 3.3.3.3/24 via 1.1.1.1这样配置就是不正确的,必须将3.3.3.3/24改为3.3.3.0/24才是正确的。
route命令
配置路由的另一种命令route
语法格式:
route –n:显示路由表,且以ip或port的形式显示而不是使用主机名来显示
其中U表示路由是启动的
G表示是默认路由
route [add|del] [-net|-host] [网段或主机][netmask mask] [gw default-ip] [dev 接口名称]
add:增加路由
del:用于删除路由。如route del -net 6.6.6.0 netmask 255.255.255.0
-net:指定的网段路由u
-host:指定主机路由。如:route add -host 6.6.6.6 gw 3.3.3.3 dev eth1
netmask mask:指定掩码。其中netmask为关键字,mask则为要替换的掩码。
gw:后面接默认网关的ip-address
dev:后面接接口名称
例如一:给ip为192.168.2.25的地址配置一个网关为192.168.2.222
例如二、配置一条去往10.1.1.0/24的路由,下一条为192.168.2.25
使用route命令来配置默认路由
route [add]del] default [gw NEXHOP]
NEXHOP:为下一跳
例如:
使用ip route和route设定路由时的区别:
1、使用ip route设定路由时,其下一跳使用via关键字来指定。使用route命令设定ip时,其下一跳使用gw关键字来指定。
2、使用ip route设定网段或主机路由时,直接在该网段后面加上掩码即可。如:10.1.1.0/24;而使用route命令设定主机路由时,需要使用-host关键字来指定,且后面不需要加掩码,指定网段路由时,需要使用-net关键字来指定,并且还需要netmask关键字来指定该路由的掩码。
上述使用route配置的命令会立即生效,一旦网络重启或者主机重启都会失效。要想永久有效,必须将命令写到配置文件中去。
路由的配置文件是/etc/sysconfig/network-script/route-eth#
注意:只有在配置文件中的gw的ip和这个接口的ip处于同一个网段内,这个路由才会生效。
配置文件有2种格式:
第一种格式为:
DEST via NEXHOP
例如:
第二种格式为:
ADDRESS#=
NETMASK#=
GATEWAY#=
其中#为数字,表示这是第几条路由
一个接口的多ip配置
我们常常看到一个接口有多个地址存在,那么如何去配置一个接口有多个地址呢?
有2种方式来配置
第一种使用ifconfig命令来配置。不过ifconfig命令是通过给接口配置别名的方式来实现的。
语法格式:ifconfig 接口名称:# IP_ADDRESS
#:表示数字
例如:给etho配置另一个地址为11.11.11.11
第二种方式:使用ip addr add方式配置
关于使用ip addr add命令来给一个接口配置多个地址上面已经介绍,这里不再详述。
转载于:https://blog.51cto.com/xslwahaha/1438669