ifconfig 命令:

		选项:
			-a : 显示所有接口,包括inactive状态的接口;

实例:

			两种格式
			给virbr0-nic网卡配置IP地址
			~]#ifconfig virbr0-nic 192.168.10.100/24 up/down

			~]#ifconfig virbr0-nic 192.168.10.11 netmask 255.255.255.0  up/down

注意:立即送往内核中的TCP/IP协议栈,并生效。

管理IPv6地址: add addr/prefixlen del addr/prefixlen


	route命令:路由查看及管理
	
			路由条目类型:
						主机路由:目标地址为单个IP;
						网络路由:目标地址为IP网络;
						默认路由:目标为任意主机,0.0.0.0/0.0.0.0  
						
						
查看:
					
									[root@CentOS7 ~]# route -n
		Kernel IP routing table
		Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
		0.0.0.0         192.168.0.1     0.0.0.0         UG    100    0        0 ens33
		192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 ens33
		192.168.10.0    0.0.0.0         255.255.255.0   U     0      0        0 virbr0-nic
		192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

添加:

		route add [-net] [-host] target [netmask Nm] [gw WG] [[dev] if]
		
		实例:
		[root@CentOS7 ~]# route add -net 10.0.0.0/8 gw 192.168.10.1 dev eth1
		[root@CentOS7 ~]#route add default gw 192.168.10.1

删除:

	route del [-net | -host] target [gw GW] [netmask Nm] [[dev] if]
	
	实例:
		 [root@CentOS7 ~]# route del -net 10.0.0.0/8 gw 192.168.10.1
		 [root@CentOS7 ~]# route del default

netstat 命令:

		显示路由表:netstat -rn
		
					-r:显示内核路由表
					-n:数字格式
					
		显示网络连接:
					
		netstat [--tcp | -t] [--udp | -u] [--udplite | -U] [--sctp | -S] [--raw | -w] [--listening | -l] [--all | -a] [--numeric | -n]  [--extend | -e[--extend | -e]] [--program | -p]
		
				-t:TCP协议的相关连接,连接均有其状态; FSM (Finate S);
				-u:UDPF相关的连接
				-w:raw socket相关的连接
				-l:处于监听状态的连接
				-a:所有状态
				-n:以数字格式显示IP和port
				-e:扩展格式
				-p:显示相关的进程及PID
		
		常用组合:
				-tan,  -uan,  -tnl,  -unl,  -tunlp
		
		传输层协议:
							tcp:面向连接的协议;通信开始之前,要建立一个虚链路;通信完成后还要拆除连接;
							udp:无连接的协议;直接发送数据报文;
		
		
显示接口的统计数据:
		  netstat {--interfaces|-I|-i} [--all|-a] [--extend|-e] [--verbose|-v] [--program|-p] [--numeric|-n] 
					
					
					所有接口:
								netstat -i
					指定接口:
								netstat -I<网卡接口>
								[root@CentOS7 ~]# netstat -Iens33

ifup / ifdown命令: 注意:通过配置文件/etc/sysconfig/network-scripts/ifcfg-ens33 来识别接口并完成配置;

		实例:
		ifup启用
		ifdown禁用
		
		[root@CentOS7 ~]# ifup virbr0-nic
		[root@CentOS7 ~]# ifdown virbr0-nic

配置主机名:

hostname命令:

		查看:hostname
		配置:hostname HOSTNAME
				当前系统有效,重启后无效;

hostnamectl命令:

		hostnamectl status:显示当前主机名信息;
		hostnamectl set-hostname:设定主机名,永久有效;

配置文件: [root@centos6 ~]# vim /etc/sysconfig/network NETWORKING=yes HOSTNAME=centos6

注意:此方法的设置不会立即生效;但以后会一直有效;


配置DNS服务器指向: 配置文件:/etc/resolv.conf 192.168.0.7 www.itxuezhe.com www itxuezhe

如何测试(host/nslookup/dig): ~]#dig -t A FQDN FQDN --> IP

[root@centos6 ~]# dig -t A www.itxuezhe.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> -t A www.itxuezhe.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34821 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION: ;www.itxuezhe.com. IN A

;; ANSWER SECTION: www.itxuezhe.com. 10 IN A 192.168.0.11

;; Query time: 0 msec ;; SERVER: 192.168.0.1#53(192.168.0.1) ;; WHEN: Sat Mar 16 01:06:35 2019 ;; MSG SIZE rcvd: 50


~]#dig -x IP IP --> FQDN

[root@centos6 ~]# dig -x 192.168.0.7

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> -x 192.168.0.7 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 42942 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION: ;7.0.168.192.in-addr.arpa. IN PTR

;; Query time: 6 msec ;; SERVER: 192.168.0.1#53(192.168.0.1) ;; WHEN: Sat Mar 16 01:08:37 2019 ;; MSG SIZE rcvd: 42 [root@centos6 ~]# dig -x 192.168.0.7

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> -x 192.168.0.7 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 42942 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION: ;7.0.168.192.in-addr.arpa. IN PTR

;; Query time: 6 msec ;; SERVER: 192.168.0.1#53(192.168.0.1) ;; WHEN: Sat Mar 16 01:08:37 2019 ;; MSG SIZE rcvd: 42



ip 命令:

https://blog.csdn.net/freeking101/article/details/68939059 https://www.cnblogs.com/diantong/p/9511072.html

		ip [OPTIONS] OBJECT {COMMAND | help}
					OBJECT = {link | addr | route | netns}
					
		注意:OBJECT可简写,各OBJECT的子命令也可简写;

ip link set-change device attributes #设置更改设备属性

	ip link set-change device attributes
					dev NAME (default) : 指明要管理的设备,dev关键字可省略;
					up和down
					multicast on 或 multicast off :启用或禁用多播功能;
					name NAME:重命名接口
					mtu NUMBER:设置MTU的大小,默认为1500;
					netns PID:ns为namespace,用于将接口移动到指定的网络名称空间;

	ip link show -display device attributes
	
	ip link help -显示简要使用帮助;
	
	ip netns : ip - manage network namespaces.
	
	ip netns list  :列出所有的netns
	ip netns add NAME : 创建指定的netns
	ip netns exec NAME COMMAND :在指定的netns中运行命令

实例:

停止与激活网络设备 [root@Centos7ip11 ~]# ip link set ens345 up [root@Centos7ip11 ~]# ip link set ens345 down

给网卡修改名字 要事先把网卡禁用 [root@Centos7ip11 ~]# ip link set virbr0 down [root@Centos7ip11 ~]# ip link set virbr0 name ens345


ip address - protocol address management.  #IP地址-协议地址管理


ip address add - add new protocol address   
#IP地址添加-添加新协议地址
				
				ip addr add IFADDR dev IFACE
						label NAME:为额外添加的地址指明接口别名;
						broadcast ADDRESS:广播地址;
						[scope SCOPE_VALUE]:
									global:全局可用;
									link:接口可用;
									host:仅本机可用;
									
	
						实例:			
						查看ens345网卡的地址
										[root@Centos7ip11 ~]# ifconfig ens345
											ens345: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
															**inet 192.168.10.10**  netmask 255.255.255.0  broadcast 0.0.0.0
															ether 52:54:00:83:57:ed  txqueuelen 1000  (Ethernet)
															RX packets 0  bytes 0 (0.0 B)
															RX errors 0  dropped 0  overruns 0  frame 0
															TX packets 0  bytes 0 (0.0 B)
															TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
						
						
删除ens345网卡的地址
[root@Centos7ip11 ~]# ifconfig ens345 0	
							
				给ens345网卡添加地址
				[root@Centos7ip11 ~]# ip addr add 192.168.10.10/24 dev ens345

ip address delete - delete protocol address #IP地址删除-删除协议地址 ip addr delete IFADDR dev IFACE

实例:

查看ens345网卡的地址
				[root@Centos7ip11 ~]# ip addr list ens345
					3: ens345: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
							link/ether 52:54:00:83:57:ed brd ff:ff:ff:ff:ff:ff
							inet 192.168.10.101/24 scope global ens345
								 valid_lft forever preferred_lft forever
							inet 192.168.10.10/24 scope global secondary ens345
								 valid_lft forever preferred_lft forever
							inet 192.168.10.20/24 scope global secondary ens345:0
								 valid_lft forever preferred_lft forever

删除ens345网卡的一个ip地址 [root@Centos7ip11 ~]# ip addr del 192.168.10.20/24 dev ens345

再次查看ens345网卡地址就少了一个		
		[root@Centos7ip11 ~]# ip addr list ens345
		3: ens345: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
				link/ether 52:54:00:83:57:ed brd ff:ff:ff:ff:ff:ff
				inet 192.168.10.101/24 scope global ens345
					 valid_lft forever preferred_lft forever
				inet 192.168.10.10/24 scope global secondary ens345
					 valid_lft forever preferred_lft forever

ip address show - look at protocol addresses #IP地址显示-查看协议地址

ip address flush - flush protocol addresses #IP地址刷新-刷新协议地址

			[root@Centos7ip11 ~]# ip addr list ens345
			3: ens345: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
					link/ether 52:54:00:83:57:ed brd ff:ff:ff:ff:ff:ff
					inet 192.168.10.101/24 scope global ens345
						 valid_lft forever preferred_lft forever
					inet 192.168.10.10/24 scope global secondary ens345
						 valid_lft forever preferred_lft forever

			删除ens345网卡上的ip地址
			[root@Centos7ip11 ~]# ip addr flush dev ens345


			[root@Centos7ip11 ~]# ifconfig ens345
			ens345: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
							ether 52:54:00:83:57:ed  txqueuelen 1000  (Ethernet)
							RX packets 0  bytes 0 (0.0 B)
							RX errors 0  dropped 0  overruns 0  frame 0
							TX packets 0  bytes 0 (0.0 B)
							TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ip route - routing table management #IP路由-路由表管理

			ip route add - add new route
			#IP路由添加-添加新路由

			ip route change - change route
			#IP路由更改-更改路由

			ip route replace - change or add new one
			#IP路由替换-更改或添加新路由
						实例:
						
							~]# ip route add 192.168.0.0/24 ens345 via 192.168.10.100
							~]# ip route add default via GW

ip route delete - delete route #IP路由删除-删除路由 [root@Centos7ip11 ~]# ip route delete 192.168.1.0/24

ip route show - list routes #IP路由显示-列出路由

ip route flush - fiush routing tables #IP路由刷新-刷新路由表

ip route get-get a single route #IP路由获取单个路由


ss命令

		选项:
		
				-t : TCP协议的相关连接
				-u:UDP相关的连接
				-w:raw socket相关的连接
				-l:监听状态的连接
				-a:所有状态的连接
				-n:数字格式
				-p:相关的程序及其PID
				-e:扩展格式信息
				-m:内存用量
				-o:计时器信息

FILTER := [ state TCP-STATE ] [ EXPRESSION ]

	TCP的常见状态:
				TCP FSM:
						LISTEN:监听
						ESTABLISEHD:建立的连接
						FIN_WAIT_1:
						FIN_WAIT_2:
						SYN_SENT:
						SYN_RECV:
						CLOSED:

EXPRESSION : dport = sport = 实例: '( dport = :22 or sport = :22 )' [root@Centos7ip11 ~]# ss -tan '( dport = :22 or sport = :22 )' State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:22 :
ESTAB 0 52 192.168.0.11:22 192.168.0.8:51232
ESTAB 0 0 192.168.0.11:22 192.168.0.8:51817
LISTEN 0 128 :::22


配置文件: 通过配置文件修改网络属性;

		ip地址 子网掩码 网关 dns 等属性的配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33
		
		路由的相关配置文件:/etc/sysconfig/network-scripts/route-IFACE
		
		配置文件/etc/sysconfig/network-scripts/ifcfg-IFACE通过大量参数来定义接口的属性,其可通过vim等文本编辑器直接修改;也可以使用专用的命令进行修改(centos6 system-config-network (setup), centos 7: nmtui )
		
	
	
	
	ifcfg-IFACE配置文件的参数: /etc/sysconfig/network-scripts/ifcfg-ens33
	
				DEVICE:此配置文件对应的设备的名称;名称与ifcfg-ens33相同;
				ONBOOT:在系统引导过程中,是否激活此接口;
				UUID:此设备的唯一标识
				IPv6INIT:是否初始化IPv6
				BOOTPROTO:激活此接口时使用什么协议来配置接口属性,常用的有dhcp,bootp,static,none;
				TYPE:接口类型,常见的有Ethernet,Bridge;
				dns1:第一dns服务器指向;
				dns2:备用dns服务器指向;
				DOMAIN:dns搜索域;
				IPADDR:ip地址;
				NETMASK:子网掩码;
				GATEWAY:默认网关;
				USERCTL:是否允许普通用户控制此设备;
				PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向覆盖本地手动指定的dns服务器指向;默认为允许;
				HWADDR:设备的MAC地址;
				
				NM_CONTROLLED:是否使用NetworkManager服务来控制接口;


	网络服务:
			network
			NetworkManager
			
管理网络服务:
		centos 6:service SERVICE { start | stop | restart | status }
		centos 7:systemctl { start | stop | restart | status  } SERVICE.service
		
	配置文件修改之后,如果要生效,需要重启网络服务;
		 centos 6:		~]#service network restart 
		 centos 7:	 ~]#systemctl restart network.service
		 
用到非默认网关路由:/etc/sysconfig/network-scripts/route-IFACE
			支持两种配置方式,但不可混用;
					1.每行一个路由条目;
							TAGET via GW
					
					2.每三行一个路由条目;
							ADDRESS#=TARGET
							NETMASK#=MASK
							GATEWAY#=NEXTHOP

给接口配置多个地址:
		ip addr之外,ifconfig或配置文件都可以;
		
		1.ifconfig IFACE_LABEL  IPADDR/NETMASK
		
				
		2.为别名添加配置文件;
				DEVICE=IFACE_LABEL
				BOOTPROTO:网上别名不支持动态获取地址;

nmcli命令:

[root@CentOS7 ~]# nmcli device show