linux网络管理初探



linux网络管理初探

既然说到linux的网络管理,先来简单了解一下OSI开放系统模型以及TCP/IP模型。
154443766.gif

OSI(Open System Interconnect),即开放式系统互联。 一般都叫OSI参考模型,是ISO(国际标准化组织)组
 织在1985年研究的网络互联模型。该体系结构标准定义了网络互连的七层框架(物理层、数据链路层、网络层
 传输层、会话层、表示层和应用层),即ISO开放系统互连参考模型。在这一框架下进一步详细规定了每一层的
 功能,以实现开放系统环境中的互连性、互操作性和应用的可移植性。

关于OSI的具体功能请参考“小鹏_加油” 的博客

OSI七层模型是一种参考模型,是理想化的一种设想,而在实际奉行的是TCP/IP模型。
18d8bc3eb13533fac17aca2fa8d3fd1f40345be6

    TCP/IP模型将OSI的上三层模型整合为一个“应用层”,负责应用程序间的通信,下三层(四层)负责主机间的通信。

IP、MAC、DNS、TCP、UDP、端口号是什么?


IP

    IP是英文Internet Protocol的缩写,意思是“网络之间互连的协议”,也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络
实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。
正是因为有了IP协议,因特网才得以迅速发展成为世界上最大的、开放的计算机通信网络。因此,IP协议也可以叫做“因特网协议”。



IP的特性

IP 是无连接的br/> IP 用于计算机之间的通信。br/> IP 是无连接的通信协议。它不会占用两个正在通信的计算机之间的通信线路。这样,IP
就降低了对网络线路的需求。每条线可以同时满足许多不同的计算机之间的通信需要。
通过 IP,消息(或者其他数据)被分割为小的独立的包,并通过因特网在计算机之间传送。
IP 负责将每个包路由至它的目的地。

IP的地址分类



MAC

MAC(Medium/Media Access Control)地址,用来表示互联网上每一个站点的标识符,采用十六进制数表示,共六个字节(48位)。其中,前三个字节是由IEEE的注册管理机构RA负责给
不同厂家分配的代码(高位24位),也称为“编制上唯一的标识符”(Organizationally Unique Identifier),后三个字节(低位24位)由各厂家自行指派给生产的适配器
接口,称为扩展标识符(唯一性)。一个地址块可以生成224个不同的地址。MAC地址实际上就是适配器地址或适配器标识符EUI-48。



DNS

DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数
串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。



TCP

    TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能,用户数据报协议(UDP)是同一层内另一个重要的传输协议。在因特网协议族(Internet protocol suite)中,TCP层是位于IP层之上,应用层之下的中间层。不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP层不提供这样的流机制,而是提供不可靠的包交换。[1] 应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分区成适当长度的报文段(通常受该计算机连接的网络的数据链路层的最大传输单元([1]  MTU)的限制)。之后TCP把结果包传给IP层,由它来通过网络将包传送给接收端实体。 的TCP层。TCP为了保证不发生丢包,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的包发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据包就被假设为已丢失将会被进行重传。TCP用一个校验和函数来检验数据是否有错误;在发送和接收时都要计算校验和。



UDP

UDP是OSI参考模型中一种无连接的传输层协议,它主要用于不要求分组顺序到达的传输中,分组传输顺序的检查与排序由应用层完成 ,提供面向事务的简单不可靠信息传送服务。UDP 协议基本上是IP协议与上层协议的接口。UDP协议适用端口分别运行在同一台设备上的多个应用程序。 UDP提供了无连接通信,且不对传送数据包进行可靠性保证,适合于一次传输少量数据,UDP传输的可靠性由应用层负责。



端口号

在网络技术中,端口(Port)包括逻辑端口和物理端口两种类型。物理端口指的是物理存在的端口,如ADSL Modem、集线器、交换机、路由器上用 于连接其他网络设备的接口,如RJ-45端口、SC端口等等。逻辑端口是指逻辑意义上用于区分服务的端口,如TCP/IP协议中的服务端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等。由于物理端口和逻辑端口数量较多,为了对端口进行区分,将每个端口进行了编号,这就是端口号。

以送信为例子来说,你寄一封信时需要写明收件人的地址,如朝阳街朝阳小区2#1002张三收,这里的朝阳街朝阳小区2#1002就相当于IP地址,张三就相当于端口号,邮差把信按地址
(IP)送到地点后,总要知道给谁吧,收件人姓名(端口号)起的就是这个作用。



运用ifconfig管理Linux网络

使用ifconfig命令配置IP及查看网络状态

ifconfig命令不带任何参数可以查看当前系统的网络状态。

    [root@tomshen ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:1C:4D:79  
          inet addr:192.168.88.111  Bcast:192.168.88.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe1c:4d79/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:11726 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3737 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1106193 (1.0 MiB)  TX bytes:446157 (435.7 KiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:6 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:346 (346.0 b)  TX bytes:346 (346.0 b)

[root@tomshen ~]#

   lo指回环网卡,在实际中不起作用。eth0是我们当前生效网卡的网络接口名称,Link encap指的是网络类型, HWaddr 指的是MAC地址,inet
addr、Bcast、Mask分别指的是此网卡的IP
地址,网关,和子网掩码。

使用ifconfig命令配置网络接口的开启与关闭

语法: ifconfig 网络接口名称 [up|down]

     [root@tomshen ~]# ifconfig eth0 up  #开启网络接口eth0
使用ifconfig命令配置网络IP地址

语法:ifconfig  网络接口名称 IP地址 netmask 子网掩码。

     [root@tomshen ~]# ifconfig eth0 192.168.88.104 netmask 255.255.255.0     #这里子网掩码的形式还可以写成192.168.88.104/24的形式
          [root@tomshen ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:1C:4D:79  
          inet addr:192.168.88.104  Bcast:192.168.88.255  Mask:255.255.255.0          #ip地址已经改变
          inet6 addr: fe80::20c:29ff:fe1c:4d79/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:13534 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4164 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1247318 (1.1 MiB)  TX bytes:521573 (509.3 KiB)



运用route命令管理Linux网络路由

查看当前系统路由表

语法:route -n

[root@tomshen ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.88.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
添加路由条目

语法:route add  [-net(网络路由)|-host(主机路由)]  target(目标地址) [netmask 子网掩码] [gw Gw(网关)] [[dev] 网络接口名称]

   	[root@tomshen ~]# route add -host 172.16.12.21 gw 192.168.88.254 dev eth0           #指向主机172.16.12.21的路由
    [root@tomshen ~]# route add -net 172.16.0.0 netmask 255.255.0.0 gw 192.168.88.254 dev eth0    #指向网络172.16.0.0的路由
    
    [root@tomshen ~]# 
	[root@tomshen ~]# route -n
	Kernel IP routing table
	Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
	172.16.12.21    192.168.88.254  255.255.255.255 UGH   0      0        0 eth0
	192.168.88.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0               #路由条目已经添加至路由表中
	172.16.0.0      192.168.88.254  255.255.0.0     UG    0      0        0 eth0
	0.0.0.0         192.168.88.254  0.0.0.0         UG    0      0        0 eth0
删除路由条目

语法:route del [-net(网络路由)|-host(主机路由)]  target(目标地址) [netmask 子网掩码] [gw Gw(网关)] [[dev] 网络接口名称]

[root@tomshen ~]# route del -host 172.16.12.21      #删除指向主机172.16.12.21的路由
[root@tomshen ~]# route del -net 172.16.0.0/16      #指向网络172.16.0.0的路由
[root@tomshen ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.88.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
0.0.0.0         192.168.88.254  0.0.0.0         UG    0      0        0 eth0
[root@tomshen ~]#
添加网关

语法:route add default gw 网关地址

   		[root@tomshen ~]# 
[root@tomshen ~]# route add default gw 192.168.88.243
[root@tomshen ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.88.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
0.0.0.0         192.168.88.243  0.0.0.0         UG    0      0        0 eth0
0.0.0.0         192.168.88.254  0.0.0.0         UG    0      0        0 eth0



Linux网络DNS服务器指定

Linux网路中DNS服务器的指定是由配置/etc/resolv.conf文件的方式实现的。
   添加或删除DNS服务器只以添加或删除 [nameserver DNS服务器地址]条目的方式即可实现。

[root@tomshen ~]# cat /etc/resolv.conf
# Generated by NetworkManager
domain Home
search Home
nameserver 10.11.11.50            #DNS服务器地址
nameserver 202.99.224.67
[root@tomshen ~]#

   在配置完DNS服务器后可以使用 dig -t A 域名或host -t A 域名的方式解析域名。

    [root@tomshen ~]# dig -x A www.sina.com          #解析新浪网的域名

; > DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 > -x A www.sina.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER>HEADER<<- opcode: QUERY, status: NOERROR, id: 63254
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 4, ADDITIONAL: 4

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

;; ANSWER SECTION:
www.sina.com.		47	IN	CNAME	us.sina.com.cn.
us.sina.com.cn.		47	IN	CNAME	news.sina.com.cn.
news.sina.com.cn.	17	IN	CNAME	jupiter.sina.com.cn.
jupiter.sina.com.cn.	3594	IN	CNAME	syimg.sina.com.cn.
syimg.sina.com.cn.	13	IN	A	124.95.163.253

;; AUTHORITY SECTION:
sina.com.cn.		71307	IN	NS	ns2.sina.com.cn.
sina.com.cn.		71307	IN	NS	ns4.sina.com.cn.
sina.com.cn.		71307	IN	NS	ns1.sina.com.cn.
sina.com.cn.		71307	IN	NS	ns3.sina.com.cn.

;; ADDITIONAL SECTION:
ns1.sina.com.cn.	71307	IN	A	202.106.184.166
ns4.sina.com.cn.	71307	IN	A	121.14.1.22
ns2.sina.com.cn.	71307	IN	A	61.172.201.254
ns3.sina.com.cn.	71307	IN	A	123.125.29.99

;; Query time: 54 msec
;; SERVER: 10.11.11.50#53(10.11.11.50)
;; WHEN: Thu Dec 31 05:08:37 2015
;; MSG SIZE  rcvd: 271

[root@tomshen ~]#

   也可使用 dig -x IP地址或host -t PTR IP地址的方式对IP地址进行反解析



运用netstat命令查看Linux网络状态

    语法:netstat命令:
       				netstat - Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships

       				显示网络连接:
       					netstat [--tcp|-t] [--udp|-u] [--raw|-w] [--listening|-l] [--all|-a] [--numeric|-n] [--extend|-e[--extend|-e]]  [--program|-p]
       						-t: tcp协议相关
       						-u: udp协议相关
       						-w: raw socket相关
       						-l: 处于监听状态
       						-a: 所有状态
       						-n: 以数字显示IP和端口;
       						-e:扩展格式
       						-p: 显示相关进程及PID

       						常用组合:
       							-tan, -uan, -tnl, -unl

       				显示路由表:
       					netstat  {--route|-r} [--numeric|-n]
       						-r: 显示内核路由表
       						-n: 数字格式

       				显示接口统计数据:
       					netstat  {--interfaces|-I|-i} [iface] [--all|-a] [--extend|-e] [--program|-p] [--numeric|-n] 

       						# netstat -i                 显示所有接口 
       						# netstat -I 接口名称        显示指定接口

   范例:

[root@tomshen ~]# netstat -tan   #以数字格式显示全部tcp协议相关的
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State      
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      
tcp        0     52 192.168.88.104:22           192.168.88.106:2425         ESTABLISHED 
tcp        0      0 :::22                       :::*                        LISTEN      
tcp        0      0 ::1:631                     :::*                        LISTEN      
tcp        0      0 ::1:25                      :::*                        LISTEN      
[root@tomshen ~]# netstat --route       #显示路由表
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.88.0    *               255.255.255.0   U         0 0          0 eth0
default         192.168.88.243  0.0.0.0         UG        0 0          0 eth0
default         192.168.88.254  0.0.0.0         UG        0 0          0 eth0
[root@tomshen ~]# netstat -i          #显示所有接口
Kernel Interface table
Iface       MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0       1500   0    18303      0      0      0     5756      0      0      0 BMRU
lo        16436   0        6      0      0      0        6      0      0      0 LRU
[root@tomshen ~]# netstat -I eth0         #以I指定显示指定的接口时接口名称要紧跟在字母I后面,不然会无法识别命令
usage: netstat [-veenNcCF] [] -r         netstat {-V|--version|-h|--help}
       netstat [-vnNcaeol] [...]
       netstat { [-veenNac] -I[] | [-veenNac] -i | [-cnNe] -M | -s } [delay]

        -r, --route                display routing table
        -I, --interfaces=display interface table for-i, --interfaces           display interface table
        -g, --groups               display multicast group memberships
        -s, --statistics           display networking statistics (like SNMP)
        -M, --masquerade           display masqueraded connections

        -v, --verbose              be verbose
        -n, --numeric              don't resolve names
        --numeric-hosts            don't resolve host names
        --numeric-ports            don't resolve port names
        --numeric-users            don't resolve user names
        -N, --symbolic             resolve hardware names
        -e, --extend               display other/more information
        -p, --programs             display PID/Program name for sockets
        -c, --continuous           continuous listing

        -l, --listening            display listening server sockets
        -a, --all, --listening     display all sockets (default: connected)
        -o, --timers               display timers
        -F, --fib                  display Forwarding Information Base (default)
        -C, --cache                display routing cache instead of FIB
        -T, --notrim               stop trimming long addresses
        -Z, --context              display SELinux security context for sockets: Name of interface to monitor/list.={-t|--tcp} {-u|--udp} {-S|--sctp} {-w|--raw} {-x|--unix} --ax25 --ipx --netrom=Use '-A' or '--'; default: inet
  List of possible address families (which support routing):
    inet (DARPA Internet) inet6 (IPv6) ax25 (AMPR AX.25) 
    netrom (AMPR NET/ROM) ipx (Novell IPX) ddp (Appletalk DDP) 
    x25 (CCITT X.25) 
[root@tomshen ~]# netstat -Ietho    显示指定接口
Kernel Interface table
Iface       MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
etho: error fetching interface information: Device not found
[root@tomshen ~]#



使用IP命令配置Linux网络属性

使用IP命令配置网络设备属性

语法:

					ip link - network device configuration     设置网络设备属性

					set                                        设置属性
						dev 接口名
						可设置属性:
							up and down:激活或禁用指定接口;

					show                                       显示属性
						[dev 接口名]:指定接口
						[up]:仅显示处于激活状态的接口

范例:

[root@tomshen ~]# ip link set eth0 up        #激活eth0
[root@tomshen ~]# ip link show up            #显示所有处于激活状态的接口
1: lo:mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0:mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:1c:4d:79 brd ff:ff:ff:ff:ff:ff
[root@tomshen ~]#



使用IP命令配置IP

使用IP命令查看IP地址

语法:

   ip address show - look at protocol addresses
						[dev DEVICE]                 #查看指定接口
						[label PATTERN]              #只列出标签匹配PATTERN的地址,PATTERN是一个shell风格的正则表达式。
						[primary and secondary]      #显示主IP或辅助IP

  范例:

[root@tomshen ~]# ip add show dev eth0          #只查看etho接口的IP
2: eth0:mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:1c:4d:79 brd ff:ff:ff:ff:ff:ff
    inet 192.168.88.104/24 brd 192.168.88.255 scope global eth0
    inet 192.168.1.45/32 scope global eth0-0
    inet6 fe80::20c:29ff:fe1c:4d79/64 scope link 
       valid_lft forever preferred_lft forever
[root@tomshen ~]#
使用IP添加或删除IP地址

语法:

         ip addr { add | del } IFADDR dev 网络接口名称
						[label LABEL]:添加地址时指明网卡别名
						[scope {global|link|host}]:指明作用域
							global: 全局可用;
							link: 仅链接可用;
							host: 本机可用;
						[broadcast ADDRESS]:指明广播地址

    范例:

   [root@tomshen ~]# ip addr add 192.168.1.56 dev eth0 label eth0-0 scope global    添加IP 192.168.1.56 到eth0 并且指明网卡别名为eth0-0,作用域为global。  
   [root@tomshen ~]# ip addr show
1: lo:mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0:mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:1c:4d:79 brd ff:ff:ff:ff:ff:ff
    inet 192.168.88.104/24 brd 192.168.88.255 scope global eth0
    inet 192.168.1.56/32 scope global eth0-0
    inet6 fe80::20c:29ff:fe1c:4d79/64 scope link 
       valid_lft forever preferred_lft forever
[root@tomshen ~]# 

   [root@tomshen ~]# ip addr del 192.168.1.56 dev eth0 label eth0-0               #删除这条路由
Warning: Executing wildcard deletion to stay compatible with old scripts.
         Explicitly specify the prefix length (192.168.1.56/32) to avoid this warning.
         This special behaviour is likely to disappear in further releases,
         fix your scripts!
[root@tomshen ~]# ip addr show dev eth0
2: eth0:mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:1c:4d:79 brd ff:ff:ff:ff:ff:ff
    inet 192.168.88.104/24 brd 192.168.88.255 scope global eth0
    inet6 fe80::20c:29ff:fe1c:4d79/64 scope link 
       valid_lft forever preferred_lft forever
[root@tomshen ~]#
使用IP命令清空IP地址
ip address flush - flush protocol addresses       清空 使用格式同show
使用I命令管理路由

语法:

ip route add 添加路由:ip route add TARGET via GW dev 接口名称 src SOURCE_IP       TARGET: 主机路由:IP 网络路由:NETWORK/MASK 添加网关:ip route add default via GW dev 接口名称 ip route delete 删除路由:ip route del TARGET ip route show         显示路由 ip route flush        清空路由 [dev IFACE] [via PREFIX]

范例:

[root@localhost ~]# ip route add 192.168.99.23 via 192.168.88.254 dev eno16777736 src 192.168.88.109       #添加路由 ,ip route命令添加路由需要指定源IP
[root@localhost ~]# ip route show
default via 192.168.88.1 dev eno16777736  proto static  metric 100 
192.168.88.0/24 dev eno16777736  proto kernel  scope link  src 192.168.88.109  metric 100 
192.168.99.23 via 192.168.88.254 dev eno16777736  src 192.168.88.109 
[root@localhost ~]# ip route del 192.168.99.23                                                            #删除路由
[root@localhost ~]# ip route show
default via 192.168.88.1 dev eno16777736  proto static  metric 100 
192.168.88.0/24 dev eno16777736  proto kernel  scope link  src 192.168.88.109  metric 100



使用ss命令查看Linux网络状态

  语法; ss命令: 格式:ss [OPTION]... [FILTER] 选项: -t: tcp协议相关 -u: udp协议相关 -w: 裸套接字相关 -x:unix sock相关 -l: listen状态的连接 -a: 所有 -n: 数字格式 -p: 相关的程序及PID -e: 扩展的信息 -m:内存用量 -o:计时器信息 FILTER (过滤):= [ state TCP-STATE ] [ EXPRESSION ]    过滤条件 TCP的常见状态: tcp finite state machine:                        CLOSED表示没有连接,各个状态的意义如下:                        LISTEN - 侦听来自远方TCP端口的连接请求;                        SYN-SENT -在发送连接请求后等待匹配的连接请求;                        SYN-RECEIVED - 在收到和发送一个连接请求后等待对连接请求的确认;                        ESTABLISHED- 代表一个打开的连接,数据可以传送给用户;                        FIN-WAIT-1 - 等待远程TCP的连接中断请求,或先前的连接中断请求的确认;                        FIN-WAIT-2 - 从远程TCP等待连接中断请求;                        CLOSE-WAIT - 等待从本地用户发来的连接中断请求;                        CLOSING -等待远程TCP对连接中断的确认;                        LAST-ACK - 等待原来发向远程TCP的连接中断请求的确认;                        TIME-WAIT -等待足够的时间以确保远程TCP接收到连接中断请求的确认;                        CLOSED - 没有任何连接状态; EXPRESSION: dport = sport = 示例:’( dport = :ssh or sport = :ssh )’ 常用组合: -tan, -tanl, -tanlp, -uan

范例:

[root@localhost ~]# ss  -tan    #查看当前网络所有以数字显示tcp协议相关的状态
State       Recv-Q Send-Q                  Local Address:Port                    Peer Address:Port 
LISTEN      0      128                                 *:22                                 *:*     
LISTEN      0      100                         127.0.0.1:25                                 *:*     
ESTAB       0      0                      192.168.88.109:22                    192.168.88.106:4423  
LISTEN      0      128                                :::22                                :::*     
LISTEN      0      100                               ::1:25                                :::*     
[root@localhost ~]#


在上面以命令形式配置的IP只对当前有效,在关机以后就会失效。
下面讲解一下通过配置文件的方式配置linux网络的属性的方法。


通过配置文件的方式配置linux网络的属性

    IP、MASK、GW、DNS相关配置文件:/etc/sysconfig/network-scripts/ifcfg-网络接口名称        /etc/sysconfig/network-scripts/ifcfg-IFACE: DEVICE:此配置文件应用到的设备; HWADDR:对应的设备的MAC地址; BOOTPROTO:激活此设备时使用的地址配置协议,常用的dhcp, static, none, bootp; NM_CONTROLLED:NM是NetworkManager的简写;此网卡是否接受NM控制;CentOS6建议为“no”; ONBOOT:在系统引导时是否激活此设备; TYPE:接口类型;常见有的Ethernet, Bridge; UUID:设备的惟一标识; IPADDR:指明IP地址; NETMASK:子网掩码; GATEWAY: 默认网关; DNS1:第一个DNS服务器指向; DNS2:第二个DNS服务器指向; USERCTL:普通用户是否可控制此设备; PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向信息直接覆盖至/etc/resolv.conf(DNS配置文件)文件中;



[root@localhost network-scripts]# vim ifcfg-eno16777736

  5 IPV6INIT="yes"
  6 IPV6_AUTOCONF="yes"
  7 IPV6_DEFROUTE="yes"
  8 IPV6_FAILURE_FATAL="no"
  9 NAME="eno16777736"
 10 UUID="530b98c6-7b71-4938-a1f9-ac5947a1a941"
 11 DEVICE="eno16777736"
 12 ONBOOT="yes"
 13 IPADDR=192.168.88.109
 14 PREFIX=24
 15 GATEWAY=192.168.88.1
 16 IPV6_PEERDNS=yes
 17 IPV6_PEERROUTES=yes
 18 IPV6_PRIVACY=no
"ifcfg-eno16777736" 18L, 354C

wKioL1aJHi_SiLoZAAIeDjgsiKQ993.jpg

这里大家要注意,ifcfg-eno16777736与DEVICE="eno16777736"所指的网卡设备名要对应一致。

    路由相关的配置文件:/etc/sysconfig/network-scripts/route-IFACE         /etc/sysconfig/network-scripts/route-IFACE 两种配置风格: (1) 目标IP via 网关 (2) 每三行定义一条路由 ADDRESS#=TARGET NETMASK#=mask GATEWAY#=GW

如在/etc/sysconfig/network-scripts/目录新建一名为route-eno16777736文件,添加二条路由。

  1 
  2 172.16.1.34 via 192.168.88.1
  3 191.17.5.23 via 192.168.88.1
  4 
~                                                                                                                   
~

重启系统后查看路由表

[root@localhost ~]# ip route show
default via 192.168.88.1 dev eno16777736  proto static  metric 100 
172.16.1.34 via 192.168.88.1 dev eno16777736  proto static  metric 100 
191.17.5.23 via 192.168.88.1 dev eno16777736  proto static  metric 100 
192.168.88.0/24 dev eno16777736  proto kernel  scope link  src 192.168.88.109  metric 100 
[root@localhost ~]#



使用TUI界面配置Linux网络属性

TUI界面配置linux网络的方法非常简单输入system-config-network-tui或setup命令均可。

这里我们输入setup 命令

wKioL1aJH0jy3KdsAAEOzDS2zBw772.jpg  

选择网络配置

wKioL1aJH0nhnvQtAACnYfDu1rY214.jpg

这里根据需要选择,我们以设备配置为例

wKiom1aJHyfTuGeGAADg8t9UMF8284.jpg

选择相应网卡

wKioL1aJH0vxvqiZAAFFgvinnAY050.jpg

配置网络属性


配置主机名

    配置当前主机的主机名:
      命令方式:hostname [HOSTNAME]
 
  配置文件方式:/etc/sysconfig/network
  HOSTNAME=
         范例:

 [root@localhost sysconfig]# vim network

  1 # Created by anaconda
  2 HOSTNAME=tomshen             #更改主机名为tomshen  
~

 

     


你可能感兴趣的:(linux,网络,管理初探)