Centos的网络配置命令和文件,centos配置命令在centos7上是


一、ifcongfig

Centos6之前最常用的配置网络命令就是ifconfig,使用ifconfig命令时最好切换到root用户的身份1、直接使用ifconfig可以查看当前配置的网络设备的信息例如[root@localhost~]#ifconfigeno16777728:flags=4163<UP,BROADCAST,RUNNING,MULTICAST>mtu1500inet172.16.9.9netmask255.255.0.0broadcast172.16.255.255inet6fe80::20c:29ff:fe83:15cbprefixlen64scopeid0x20<link>ether00:0c:29:83:15:cbtxqueuelen1000(Ethernet)RXpackets120796bytes20258545(19.3MiB)RXerrors0dropped1418overruns0frame0TXpackets28466bytes47363344(45.1MiB)TXerrors0dropped0overruns0carrier0collisions0lo:flags=73<UP,LOOPBACK,RUNNING>mtu65536inet127.0.0.1netmask255.0.0.0inet6::1prefixlen128scopeid0x10<host>looptxqueuelen0(LocalLoopback)RXpackets20bytes1780(1.7KiB)RXerrors0dropped0overruns0frame0TXpackets20bytes1780(1.7KiB)TXerrors0dropped0overruns0carrier0collisions0这里可以看到我目前有一个网络设备eno16777728和一个网络回环接口lo,常见的网络接口有以下几个eth0: ethernet的简写,一般用于以太网接口。在centos7上是eno16777728wifi0:wifi是无线局域网,因此wifi0一般指无线网络接口。ath0: Atheros的简写,一般指Atheros芯片所包含的无线网络接口。2、用ifconfig启动或关闭指定网卡ifconfig up 启动指定的网络设备ifconfig down 关闭指定的网络设备网卡名称一定要写在down或up之前[root@localhost~]#ifconfigeno16777728down[root@localhost~]#ifconfigeno16777728up3、用ifconfig配置网络地址和网关比如这里我配置eth0网卡的ip地址为:172.16.7.254子网掩码为255.255.0.0注意用ifconfig改网络配置会立即生效[root@localhost~]#ifconfigeth0172.16.7.254netmask255.255.0.0[root@localhost~]#ifconfigeth0Linkencap:EthernetHWaddr00:0C:29:5E:4B:1Finetaddr:172.16.7.254Bcast:172.16.255.255Mask:255.255.0.0inet6addr:fe80::20c:29ff:fe5e:4b1f/64Scope:LinkUPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1RXpackets:1372221errors:2dropped:0overruns:0frame:0TXpackets:3465errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:1000RXbytes:119202924(113.6MiB)TXbytes:334330(326.4KiB)Interrupt:19Baseaddress:0x2000还可以给一个网卡配上多个地址,例如[root@localhost~]#ifconfigeth0:0172.16.7.225netmask255.255.0.0[root@localhost~]#ifconfigeth0Linkencap:EthernetHWaddr00:0C:29:5E:4B:1Finetaddr:172.16.7.254Bcast:172.16.255.255Mask:255.255.0.0inet6addr:fe80::20c:29ff:fe5e:4b1f/64Scope:LinkUPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1RXpackets:1375940errors:2dropped:0overruns:0frame:0TXpackets:3579errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:1000RXbytes:119494875(113.9MiB)TXbytes:348430(340.2KiB)Interrupt:19Baseaddress:0x2000eth0:0Linkencap:EthernetHWaddr00:0C:29:5E:4B:1Finetaddr:172.16.7.225Bcast:172.16.255.255Mask:255.255.0.0UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1Interrupt:19Baseaddress:0x2000如果还想增加更多则可以eth0:1 eth0:2依次继续增加其他的一些参数:-arp 打开或关闭指定接口上使用的ARP协议。前面加上一个负号用于关闭该选项。-allmuti 关闭或启动指定接口的无区别模式。前面加上一个负号用于关闭该选项。-promisc 关闭或启动指定网络设备的promiscuous模式。前面加上一个负号用于关闭该选项。add<地址> 设置网络设备IPv6的IP地址。del<地址> 删除网络设备IPv6的IP地址。media<网络媒介类型> 设置网络设备的媒介类型。mem_start<内存地址> 设置网络设备在主内存所占用的起始地址。metric<数目> 指定在计算数据包的转送次数时,所要加上的数目。mtu<字节> 设置网络设备的MTU。netmask<子网掩码> 设置网络设备的子网掩码。tunnel<地址> 建立IPv4与IPv6之间的隧道通信地址。-broadcast<地址> 将要送往指定地址的数据包当成广播数据包来处理。-pointopoint<地址> 与指定地址的网络设备建立直接连线,此模式具有保密功能。

二、route

route命令用于管理本机路由表,路由表就是指,本机访问指定的主机或网络需要通过的网络接口,简单点理解,你的网关就是通往所有其他网络所必须要经过的网络接口。

[root@localhost~]#route

KernelIProutingtable

DestinationGatewayGenmaskFlagsMetricRefUseIface

172.16.0.0*255.255.0.0U000eth0

Destination代表目标网络

Gateway代表网关地址,*代表目标是本机网络不需要网关

Genmask代表你要访问的网络的子网掩码

Flags为路由标志,标记当前网络节点的状态。

Flags标志说明:

UUp表示此路由当前为启动状态

HHost,表示此网关为一主机

GGateway,表示此网关为一路由器

RReinstateRoute,使用动态路由重新初始化的路由

DDynamically,此路由是动态性地写入

MModified,此路由是由路由守护程序或导向器动态修改

!表示此路由当前为关闭状态

Metric代表路由距离,到达指定网络所需的中转数

Ref代表路由项引用次数

Use代表此路由项被路由软件查找的次数

Iface 该路由表项对应的输出接口

route常用命令:

add : 添加一条路由规则

del : 删除一条路由规则

-net : 目的地址是一个网络

-host : 目的地址是一个主机

target : 目的网络或主机

netmask : 目的地址的网络掩码

gw : 路由数据包通过的网关

dev : 为路由指定的网络接口

1、添加一个主机路由到eth0

[root@localhost~]#routeadd-host172.16.1.2deveth0

[root@localhost~]#route

KernelIProutingtable

DestinationGatewayGenmaskFlagsMetricRefUseIface

172.16.1.2*255.255.255.255UH000eth0

172.16.0.0*255.255.0.0U000eth0

2、删除路由

[root@localhost~]#route

KernelIProutingtable

DestinationGatewayGenmaskFlagsMetricRefUseIface

172.16.1.2*255.255.255.255UH000eth0

192.168.122.0*255.255.255.0U000virbr0

172.16.0.0*255.255.0.0U000eth0

[root@localhost~]#routedel-net192.168.122.0netmask255.255.255.0virbr0

[root@localhost~]#route

KernelIProutingtable

DestinationGatewayGenmaskFlagsMetricRefUseIface

172.16.1.2*255.255.255.255UH000eth0

172.16.0.0*255.255.0.0U000eth0

3、添加默认网关

[root@localhost~]#routeadddefaultgw172.16.0.1

[root@localhost~]#route

KernelIProutingtable

DestinationGatewayGenmaskFlagsMetricRefUseIface

172.16.1.2*255.255.255.255UH000eth0

172.16.0.0*255.255.0.0U000eth0

default172.16.0.10.0.0.0UG000eth0

4、删除默认网关

[root@localhost~]#routedeldefaulteth0

[root@localhost~]#route

KernelIProutingtable

DestinationGatewayGenmaskFlagsMetricRefUseIface

172.16.1.2*255.255.255.255UH000eth0

172.16.0.0*255.255.0.0U000eth0

5、添加网络到路由

[root@localhost~]#routeadd-net172.16.9.9netmask255.255.255.255gw172.16.0.1eth0

[root@localhost~]#route

KernelIProutingtable

DestinationGatewayGenmaskFlagsMetricRefUseIface

172.16.9.9172.16.0.1255.255.255.255UGH000eth0

172.16.1.2*255.255.255.255UH000eth0

172.16.0.0*255.255.0.0U000eth0

三、DNS服务器指定

编辑/etc/resolv.conf

这里我配置三个DNS为例

[root@localhost~]#vim/etc/resolv.conf

#打开后的内容

#GeneratedbyNetworkManager

#Nonameserversfound;tryputtingDNSserversintoyour

#ifcfgfilesin/etc/sysconfig/network-scriptslikeso:

#

#DNS1=xxx.xxx.xxx.xxx

#DNS2=xxx.xxx.xxx.xxx

#DOMAIN=lab.foo.combar.foo.com

#下面是三个DNS

DNS1=172.16.0.1

DNS2=8.8.8.8

DNS3=114.114.114.114

四、ip

ip命令的功能和ifconfig类似,但是功能更加强大,所以centos7之后的系统有得包组是不带ifconfig而只带ip命令了

1、查看当前配置的所有网络设备的信息

[root@localhost~]#ipaddr

1:lo:<LOOPBACK,UP,LOWER_UP>mtu65536qdiscnoqueuestateUNKNOWN

link/loopback00:00:00:00:00:00brd00:00:00:00:00:00

inet127.0.0.1/8scopehostlo

valid_lftforeverpreferred_lftforever

inet6::1/128scopehost

valid_lftforeverpreferred_lftforever

2:eno16777728:<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdiscpfifo_faststateUPqlen1000

link/ether00:0c:29:83:15:cbbrdff:ff:ff:ff:ff:ff

inet172.16.9.9/16brd172.16.255.255scopeglobaleno16777728

valid_lftforeverpreferred_lftforever

inet6fe80::20c:29ff:fe83:15cb/64scopelink

valid_lftforeverpreferred_lftforever

后面接上指定的网卡也可以查看指定网卡的信息,也可使用ip address show

2、添加删除地址

#添加

[root@localhost~]#ipaddradd172.16.9.10deveno16777728:1

[root@localhost~]#ipaddr

1:lo:<LOOPBACK,UP,LOWER_UP>mtu65536qdiscnoqueuestateUNKNOWN

link/loopback00:00:00:00:00:00brd00:00:00:00:00:00

inet127.0.0.1/8scopehostlo

valid_lftforeverpreferred_lftforever

inet6::1/128scopehost

valid_lftforeverpreferred_lftforever

2:eno16777728:<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdiscpfifo_faststateUPqlen1000

link/ether00:0c:29:83:15:cbbrdff:ff:ff:ff:ff:ff

inet172.16.9.9/16brd172.16.255.255scopeglobaleno16777728

valid_lftforeverpreferred_lftforever

inet172.16.9.10/32scopeglobaleno16777728

valid_lftforeverpreferred_lftforever

inet6fe80::20c:29ff:fe83:15cb/64scopelink

valid_lftforeverpreferred_lftforever

#删除

[root@localhost~]#ipaddrdel172.16.9.10deveno16777728:1

[root@localhost~]#ipaddr

1:lo:<LOOPBACK,UP,LOWER_UP>mtu65536qdiscnoqueuestateUNKNOWN

link/loopback00:00:00:00:00:00brd00:00:00:00:00:00

inet127.0.0.1/8scopehostlo

valid_lftforeverpreferred_lftforever

inet6::1/128scopehost

valid_lftforeverpreferred_lftforever

2:eno16777728:<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdiscpfifo_faststateUPqlen1000

link/ether00:0c:29:83:15:cbbrdff:ff:ff:ff:ff:ff

inet172.16.9.9/16brd172.16.255.255scopeglobaleno16777728

valid_lftforeverpreferred_lftforever

inet6fe80::20c:29ff:fe83:15cb/64scopelink

valid_lftforeverpreferred_lftforever

3、查看现有的路由表

[root@localhost~]#iprouteshow

defaultvia172.16.0.1deveno16777728protostaticmetric100

172.16.0.0/16deveno16777728protokernelscopelinksrc172.16.9.9metric100

4、添加删除路由和网关

#添加路由

[root@localhost~]#iprouteadd172.16.200.51via172.16.0.1deveno16777728src172.16.9.9

[root@localhost~]#iprouteshow

defaultvia172.16.0.1deveno16777728protostaticmetric100

172.16.0.0/16deveno16777728protokernelscopelinksrc172.16.9.9metric100

172.16.200.51via172.16.0.1deveno16777728src172.16.9.9

#172.16.200.51为目标ip

#172.16.0.1为路由

#172.16.9.9为源ip

#删除路由

[root@localhost~]#iproutedel172.16.200.51

[root@localhost~]#iproute

defaultvia172.16.0.1deveno16777728protostaticmetric100

172.16.0.0/16deveno16777728protokernelscopelinksrc172.16.9.9metric100

#添加默认网关

[root@localhost~]#iprouteadddefaultvia172.16.0.1deveno16777728

[root@localhost~]#iprouteshow

defaultvia172.16.0.1deveno16777728

defaultvia172.16.0.1deveno16777728protostaticmetric100

172.16.0.0/16deveno16777728protokernelscopelinksrc172.16.9.9metric100

#删除刚才添加的网关

[root@localhost~]#iproutedeldefaultvia172.16.0.1deveno16777728

[root@localhost~]#iproute

defaultvia172.16.0.1deveno16777728protostaticmetric100

172.16.0.0/16deveno16777728protokernelscopelinksrc172.16.9.9metric100

4、关闭网卡修改网卡名称

[root@localhost~]#iplinkseteno16777728down

[root@localhost~]#iplinkseteno16777728nameeth0

[root@localhost~]#iplinksetshow

[root@localhost~]#iplinkseteth0up

#这样就把eno16777728改为了eth0,但是因为/etc/sysconfig/network-scripts/ifcfg-eno16777728还是原来的

#名字所以,配置不会跟着到eth0上,所以要完整的改名需要改变此配置文件中NAME=eth0,并将此文件名改为

#ifcfg-eth0

五、netstat

netstat命令主要用来查看整个系统的网络情况

1、选项:

-a或--all:显示所有连线中的端口;

-A<网络类型>或--<网络类型>:列出该网络类型连线中的相关地址;

-c或--continuous:持续列出网络状态;

-C或--cache:显示路由器配置的快取信息;

-e或--extend:显示网络其他相关信息;

-F或--fib:显示FIB;

-g或--groups:显示多重广播功能群组组员名单;

-h或--help:在线帮助;

-i或--interfaces:显示网络界面信息表单;

-l或--listening:显示监控中的服务器的Socket;

-M或--masquerade:显示伪装的网络连线;

-n或--numeric:直接使用ip地址,而不通过域名服务器;

-N或--netlink或--symbolic:显示网络硬件外围设备的符号连接名称;

-o或--timers:显示计时器;

-p或--programs:显示正在使用Socket的程序识别码和程序名称;

-r或--route:显示Routing Table;

-s或--statistice:显示网络工作信息统计表;

-t或--tcp:显示TCP传输协议的连线状况;

-u或--udp:显示UDP传输协议的连线状况;

-v或--verbose:显示指令执行过程;

-V或--version:显示版本信息;

-w或--raw:显示RAW传输协议的连线状况;

-x或--unix:此参数的效果和指定"-A unix"参数相同;

--ip或--inet:此参数的效果和指定"-A inet"参数相同。

2、常用的组合:

-tan, -uan, -tnl, -unl

#显示连接的tcp端口

[root@localhostnetwork-scripts]#netstat-tan

ActiveInternetconnections(serversandestablished)

ProtoRecv-QSend-QLocalAddressForeignAddressState

tcp000.0.0.0:220.0.0.0:*LISTEN

tcp00127.0.0.1:250.0.0.0:*LISTEN

tcp052172.16.9.9:22172.16.7.211:54886ESTABLISHED

tcp600:::80:::*LISTEN

tcp600:::22:::*LISTEN

tcp600::1:25:::*LISTEN

#显示连接中的udp端口

[root@localhostnetwork-scripts]#netstat-uan

#显示所有处于监听(LISTEN)状态的tcp端口

[root@localhostnetwork-scripts]#netstat-tnl

ActiveInternetconnections(onlyservers)

ProtoRecv-QSend-QLocalAddressForeignAddressState

tcp000.0.0.0:220.0.0.0:*LISTEN

tcp00127.0.0.1:250.0.0.0:*LISTEN

tcp600:::80:::*LISTEN

tcp600:::22:::*LISTEN

tcp600::1:25:::*LISTEN

#显示所有处于监听状态的udp端口

[root@localhostnetwork-scripts]#netstat-unl

六、ss

ss和netstat类似,但是显示的信息更详细,速度更快,在连接数上万的情况下用ss比netstat更快更高效,所以推荐使用ss

1、选项:

-t: tcp协议相关

-u: udp协议相关

-w: 裸套接字相关

-x:unix sock相关

-l: listen状态的连接

-a: 所有

-n: 数字格式

-p: 相关的程序及PID

-e: 扩展的信息

-m:内存用量

-o:计时器信息

2、常用组合

-tan:显示所有连接的tcp端口

-tanl:显示处于监听状态的tcp端口

-tanlp:显示监听状态的tcp端口并显示对应程序的PID

-uan:显示所有连接的udp端口

-uanl:显示处于监听状态的udp端口

-uanlp:显示监听状态的udp端口并显示对应程序的PID

[root@localhostnetwork-scripts]#ss-tan

StateRecv-QSend-QLocalAddress:PortPeerAddress:Port

LISTEN0128*:22*:*

LISTEN0100127.0.0.1:25*:*

ESTAB052172.16.9.9:22172.16.7.211:54886

LISTEN0128:::80:::*

LISTEN0128:::22:::*

LISTEN0100::1:25:::*

[root@localhostnetwork-scripts]#ss-tanl

StateRecv-QSend-QLocalAddress:PortPeerAddress:Port

LISTEN0128*:22*:*

LISTEN0100127.0.0.1:25*:*

LISTEN0128:::80:::*

LISTEN0128:::22:::*

LISTEN0100::1:25:::*

[root@localhostnetwork-scripts]#ss-tanlp

StateRecv-QSend-QLocalAddress:PortPeerAddress:Port

LISTEN0128*:22*:*users:(("sshd",pid=1250,fd=3))

LISTEN0100127.0.0.1:25*:*users:(("master",pid=2365,fd=13))

LISTEN0128:::80:::*users:(("httpd",pid=2824,fd=4),("httpd",pid=2823,fd=4),("httpd",pid=2822,fd=4),("httpd",pid=2821,fd=4))

LISTEN0128:::22:::*users:(("sshd",pid=1250,fd=4))

LISTEN0100::1:25

七、网络配置文件

1、前面所有的修改网络参数的命令在重启系统之后就会失效,只有更改网络配置文件/etc/sysconfig/network-scripts/ifcfg-eno16777728【注意这是Centos7的,Centos6为ifcfg-eth0】在重启之后才会有效

[root@localhostnetwork-scripts]#vim/etc/sysconfig/network-scripts/ifcfg-eno16777728

TYPE="Ethernet"#接口类型

BOOTPROTO="static"#激活此设备时使用的地址配置协议,常用的dhcp,static,none,bootp

DEFROUTE="yes"

PEERDNS="yes"#如果BOOTPROTO的值为“dhcp”,是否允许dhcpserver分配的dns服务器指向信息直接覆盖至/etc/resolv.conf文件中

PEERROUTES="yes"

IPV4_FAILURE_FATAL="no"

NAME="eno16777728"#设备名称

UUID="758d5aa7-239e-4488-94b3-6c3f33688dd5"#设备的唯一标识

DEVICE="eno16777728"#此配置文件应用到的设备

ONBOOT="yes"#在系统引导时是否激活此设备

IPADDR="172.16.9.9"#IP地址

NETMASK="255.255.0.0"#子网掩码

GATEWAY="172.16.0.1"#默认网关

DNS1="61.128.128.68"#DNS服务器1

DNS2="61.128.192.68"#DNS服务器2

注意:记得重启网络服务方能生效;

重启网络服务:service network restart

/etc/rc.d/init.d/network restart

2、路由表的配置文件/etc/sysconfig/network-scripts/route-eno16777728【注意这是Centos7的,Centos6为ifcfg-eth0】

路由表有两种风格,

#第一种

#目标网络via路由

172.16.55.34via172.16.0.1

#第二种

#每三行定义一条路由

#目标地址

#子网掩码

#路由

ADDRESS0=172.16.55.34

NETMASK0=255.255.0.0

GATEWAY0=172.16.0.1

注意:记得重启网络服务方能生效;

重启网络服务:service network restart

/etc/rc.d/init.d/network restart

相关内容

    暂无相关文章