首页 > 代码库 > CentOS网络配置命令1

CentOS网络配置命令1

CentOS网络配置命令1


系统版本:CentOS 6.8 和 7.2


运维最重要的就是保证高可用性,可用性越高则可靠性越高。

可用性是指正常使用时间占总体时间的百分比,可用性一般是按1年365天来算的,所谓的高可用性时间说明如下

99%——相当于宕机时间365*1%=3.65天=87.6小时

99.9%——宕机时间365*24*0.1%=8.76小时(可用性提升10倍,由1%-->0.1%)

99.99%——365*24*60*0.01%=52.56分钟(提升10倍,由0.1%-->0.01%)

99.999%——52.56*0.1=5.256分钟

99.9999%——5.256*60*0.1=31.536秒


####说明:接口=网卡

查看和更改IP地址

CentOS6

ifconfig  显示已启用的网卡信息
ifconfig eth0  显示指定网卡信息
ifconfig -a  显示所有网卡信息
ifconfig -s  显示网卡的mtu和包信息
ifconfig eth0 up|down  启用或禁用网卡
ifconfig eth0 [-]arp  启用或禁用网卡的arp
ifconfig eth0 [-]promisc  启用或禁用混杂模式
ifconfig eth0 mtu N  设置接口的mtu,注意此设置为永久生效
ifconfig eth0 192.168.10.10/24  临时更改网卡的IP地址,立即生效,重启网络服务后失效

ifcfg eth0 add 172.16.10.10/16  临时增加多个IP地址,重启网络服务后失效
ifcfg eth0 del 172.16.10.10/16  删除接口地址,必须和添加的地址及掩码一致
ip addr show eth0 查看新增加的IP地址
ifcfg eth0 add 192.168.10.20/24  也可以添加同网段的多个IP地址
ifcfg eth0 add 192.168.10.30/24

ifup  启用网卡
ifdown  禁用网卡


CentOS7

ip address

ip link


centos7上的man帮助ip命令拆分开了,如下

pinfo ip
man ip
man ip-link
man ip-address
man ip-route
ip [ OPTIONS ] OBJECT { COMMAND | help }
OPTIONS:
-h  易读的格式显示,默认可以不加
-s  显示包信息
-d  显示详细信息
-4  只显示ipv4地址信息
-6  只显示ipv6地址信息
-o  将每个网卡信息显示为一行
-a  显示所有网卡信息

OBJECT:
address  显示IP地址信息
addrlabel  显示IPv6 label
link  显示网络设备信息
maddress  显示组播地址multicast address
monitor  实时显示网络链路信息
neighbour  显示ARP信息
route  显示路由表
rule  显示路由规则

COMMAND:
add
delete
show (or list)

命令设置仅临时生效

ip address  查看接口信息,包括二层信息,UP/DOWN,mac地址,IP地址
ip addr show ens32  查看指定接口信息
ip link  查看二层链路信息,不常用
ip -4 -o add  显示ipv4地址不分行,格式为一条信息显示一行
ip -o link
ip addr show up  查看已启用的网卡
ip addr add 1.1.1.1/24 dev eth0  一个网卡添加多个IP地址
ip addr  查看配置的多个IP地址
ip addr add 2.2.2.2/24 dev eth0 lable eth0:home  添加多个IP地址并命名
ip addr add 3.3.3.3/24 dev eth0 lable eth0:office
ip addr del 1.1.1/24 dev eth0  删除一个IP地址
ip addr flush dev eth0  删除网卡下的所有IP地址
ip addr add 172.16.100.100/16 dev eth0 label eth0:0
ip addr del 172.16.100.100/16 dev eth0 label eth0:0
ip addr flush dev eth0 label eth0:0  删除网卡下的所有label配置

设置网卡信息

ip link set ens33 up|down  启用或禁用网卡,以下均省略命令前缀ip link set eth0
arp up|down
promisc { on | off }
dynamic { on | off }
multicast { on | off }
name NEWNAME
address LLADDR
mtu MTU
alias NAME  设置别名

#################################

查看ARP

CentOS6

arp  查看arp信息

more /proc/net/arp  同上

arping -I ens32 192.168.10.1  发送arp请求包到邻居主机

ip neighbour  查看邻居表或arp表


RARP用于无盘工作站


CentOS7

同CentOS6


#################################

查看和更改DNS

more /etc/resolv.conf

more /etc/sysconfig/network-scripts/ifcfg-ens32  //有关DNS字段

DNS1=x.x.x.x

DNS2=y.y.y.y

#################################

查看和修改网卡信息

CentOS6

ethtool - query or control network driver and hardware settings


ethtool eth0

ethtool -i eth0

ethtool -S eth0 |head -14


CentOS7

ethtool ens32  //查看接口的速率Speed和双工Duplex

ethtool -i ens32  //显示驱动类型driver和bus总线

ethtool -S ens33 | head -14  //查看接口的包信息

查看指定接口的包信息 2 种方式

[root@c73 ~]# ifconfig ens33
ens33: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 00:0c:29:fd:1c:03  txqueuelen 1000  (Ethernet)
        RX packets 33  bytes 4698 (4.5 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 873  bytes 148903 (145.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
[root@c73 ~]# ethtool -S ens33 | head -5
NIC statistics:
     rx_packets: 33
     tx_packets: 873
     rx_bytes: 4830
     tx_bytes: 148903


注意centos6中的网卡名称和硬盘设备名称一样,都是不固定的,硬件设备变更可能会导致系统重启后命名顺序发生变化。

centos6.8重命名网卡步骤:

更改配置文件中的NAME参数

/etc/udev/rules.d/70-persistent-net.rules

 

dmesg |grep –i eth  //查看网卡驱动类型

ethtool -i eth0

lsmod |grep e1000  //查看网卡驱动模块是否已经加载到内存中

 

卸载网卡驱动:

modprobe -r e1000

rmmod e1000  //同上

 

装载网卡驱动:

modprobe e1000


#################################

查看和更改主机名

CentOS6

linux下的hostname只对本地有效,但Windows下的计算机名是调用netbios来在网络上注册的,具有本网唯一性。

more /etc/hosts

hostname  //显示或更改主机名

hostname -I  //显示本机所有可用的IP地址

hostname -a  //显示别名,即hosts文件的第一行

hostname -s  //显示短格式的hostname


CentOS7

同6


#################################

查看和设置路由

CentOS6

route  显示路由表

route -n

netstat -nr

 

Windows下查看路由表

route print

 

添加路由条目

route add -net 192.168.0.0 netmask 255.255.255.0 dev eth0  //指定静态路由,下一跳出接口
 route add -net 192.168.0.0/24 eth0  //同上简写
route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.10.1 dev eth0  //指定静态路由,下一跳网关,接口可以省略
 route add -net 192.168.0.0/24 gw 192.168.10.1  //同上简写
 route add -host 192.168.1.3 gw 192.168.10.1  //主机路由
route add -net 0.0.0.0/0 gw 192.168.10.1  //默认路由
 route add default gw 192.168.10.1  //默认路由简写
route显示路由表,Flags标志位说明如下:
U (route is up)
H (target is a host)
G (use gateway)
R (reinstate route for dynamic routing)
!  (reject route)

删除路由

route del -net 192.168.0.0 netmask 255.255.255.0
 route del -net 192.168.0.0/24  //同上简写,删除静态路由
route del -host 192.168.1.3
 route del 192.168.1.3  //同上简写,删除主机路由
route del -net 0.0.0.0/0 gw 192.168.10.1
 route del default gw 192.168.10.1
 route del default  //简写删除默认路由

注意,以上命令只是临时生效,如需重启生效则需要更改网络配置文件,并重启服务 service network restart 生效

vi /etc/sysconfig/network-scripts/route-eth0

添加路由条目有两种方法:

(1)TARGET via GW

如:192.168.0.0/24 via 172.16.0.1

 

(2)每三行定义一条路由

ADDRESS#=TARGET

NETMASK#=mask

GATEWAY#=GW

如:

ADDRESS1=192.168.0.0

NETMASK1=255.255.255.0

GATEWAY1=172.16.0.1

 

动态路由:

Linux下的动态路由软件包quagga,支持RIP,OSPF和BGP,通过命令vtysh配置,命令格式和Cisco差不多,如show running,conf t,router ospf...

 

注意Linux主机默认是没有开启路由转发功能的,开启命令如下:

echo 1 > /proc/sys/net/ipv4/ip_forward

 

跟踪路由

traceroute 192.168.0.10  //列出经过的路由条目

mtr 192.168.0.10  //动态显示经过的路由条目,mtr=my traceroute的简写

 

tcpdump  抓包工具

tcpdum -i eth0 -nn

 

#################################

实验1:配置Linux的路由

拓扑:PC1--R1--R2--PC2

1 配置网络IP

PC1:

ifconfig eth0 192.168.1.100/24

route add default gw 192.168.1.254

PC2:方法同上,省略

 

2 添加路由记录

R1

route add -net 10.0.0.0/8 gw 172.16.0.2


vim /etc/sysconfig/network-scripts/route-eth1

10.0.0.0/8 via 172.16.0.2

或者

ADDRESS1=10.0.0.0

NETMASK1=255.0.0.0

GATEWAY1=172.16.0.2

 

R2

route add -net 192.168.1.0/24 gw 172.16.0.1

 

3 iptables -F 关闭四台主机的防火墙

 

4 R1和R2,启用路由转发功能

echo 1 > /proc/sys/net/ipv4/ip_forward

 


实验2:

两台不再同一网段的Linux主机直接相连,如何实现互通,如PC1的地址为192.168.10.1/24,PC2的地址为172.16.0.1/24

只需各自配置一条默认路由指向自己即可。

PC1上:route add default gw 192.168.10.1

PC2上:route add default gw 172.16.0.1

route -n 查看路由

ping 172.16.0.1

原理是arp广播


#################################

CentOS7

查看路由表

ip route  //显示路由条目
route  //列表显示路由表,默认显示IPv4路由表
routef  //刷新路由表
routel  //显示详细的路由表条目
ip maddress  //显示组播地址
route -4  //查看IPv4路由表
route -6  //查看IPv6路由表
route -e  //显示扩展信息
netstat -r  //显示路由表信息,格式同route -e


ip route add  添加路由

ip route change  变更路由

ip route replace  添加路由

metric N  开销

table N  路由表

dev NAME  出接口

via ADDRESS  下一跳地址


ip route delete  删除路由

ip route show  查看路由

to  //去往目的地的路由

table N [all]  //指定路由表

dev  //指定出接口

via  //指定下一跳


ip route flush  刷新指定路由

ip route get  显示指定路由

ip route save  保存

ip route restore  恢复

ip route add 2.2.2.0/24 via 192.168.10.1  //添加静态路由指定下一跳
ip route add 30.1.1.0/24 dev ens33  //添加静态路由指定出接口
ip route add 20.1.1.1 dev ens33  //添加主机路由
ip route add default dev ens33  //添加默认路由
ip route add default via 192.168.1.1 dev eth0

ip route change 2.2.2.0/24 dev ens33  //更改指定的路由条目,可以更改出接口或下一跳,metric等信息

ip route show table main
ip route   //同上简写
ip route show via 192.168.10.1   //查看下一跳为192.168.10.2的路由条目
ip route show dev ens33  //查看出接口为ens33的路由条目
ip route show to 2.2.2.0/24  //查看去往2.2.2.0/24的路由条目信息
ip route show src 192.168.11.12  

ip route flush 2.2.2.0  //刷新指定的路由条目
ip route get 2.2.0.0  //显示路由表中的一条指定条目信息

ip route add 10.1.2.0/24 via 192.168.10.1 metric 50 table 3  //添加一条metric值为50的静态路由到路由表3中
ip route show table 3  //查看路由表3中的路由条目
ip route del 10.1.2.0/24 table 3  //删除表3中路由

ip route del 2.2.2.0/24  //删除静态路由
ip route del 20.1.1.1  //删除主机路由
ip route del default  //删除默认路由

本文出自 “rackie” 博客,请务必保留此出处http://rackie386.blog.51cto.com/11279229/1943844

CentOS网络配置命令1