Linux网络属性配置详解(3)

用于获取socket统计信息等,功能大致与netsata相同,ss工具是用于取代netstat的,因为很多用法相同;相比netstat而言,ss命令主要在选项上多支持了-o和-m选项,并且支持过滤功能;此外,在网络连接数量众多时,ss命令的执行性能要比netstat高得多。

语法格式:

    ss [options] [ FILTER ]

    其中,FILTER := [ state TCP-STATE ] [ EXPRESSION ],表示过滤条件;

EXPRESSION:

    dport = :目的端口;

    sport = :源端口;

常用选项:

-t:显示tcp相关的连接;

-u:显示udp相关的连接;

-w:显示raw socket相关的连接;

-a:显示所有状态的连接;

-l:显示处于监听状态的连接;

-n:以数字格式显示IP和Port;

-p:显示相应的进程及其PID;

-e:以长格式显示;

-m:显示内存用量;

-o:显示计数器信息;

示例:

显示源端口为22或目标端口为22的tcp连接:

[root@localhost ~]# 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              10.10.10.140:22                      10.10.10.1:56108

LISTEN      0      128                       :::22                              :::*

显示连接状态为ESTABLISHED的连接:

[root@localhost ~]# ss -tan state established

Recv-Q Send-Q        Local Address:Port                     Peer Address:Port             

0      52              10.10.10.140:22                       10.10.10.1:56108

以上为iproute家族命令的介绍。此外,还可指定本地主机名以及DNS服务器的地址:

(1)DNS服务器的指定:

配置文件:/etc/resolv.conf

用法示例:

添加DNS服务器地址:114.114.114.114:

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

nameserver 114.114.114.114

测试配置的DNS指向是否有效:

测试工具:dig/nslookup/host

①dig工具:

用法:

dig -t A FQDN:由FQDN解析出IP地址;(FQDN即为主机名)

dig -x IP:由IP地址反解出FQDN;

用法示例:

由FQDN解析出IP地址:

[root@localhost ~]# dig -t A public1.114dns.com.

 

; <<>> DiG 9.9.4-RedHat-9.9.4-37.el7 <<>> -t A public1.114dns.com.

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64858

;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

 

;; OPT PSEUDOSECTION:

; EDNS: version: 0, flags:; udp: 4096

;; QUESTION SECTION:

;public1.114dns.com.        IN  A

 

;; ANSWER SECTION:

public1.114dns.com. 441 IN  A  114.114.114.114    #解出地址,说明该DNS

服务器地址有效;

 

;; Query time: 38 msec

;; SERVER: 114.114.114.114#53(114.114.114.114)

;; WHEN: Sat Feb 11 19:38:48 CST 2017

;; MSG SIZE  rcvd: 63

有时还可反解,不过大多数IP地址不支持反解:

[root@localhost ~]# dig -x 114.114.114.114    #由IP地址解析出FQDN;

 

; <<>> DiG 9.9.4-RedHat-9.9.4-37.el7 <<>> -x 114.114.114.114

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48274

;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

 

;; OPT PSEUDOSECTION:

; EDNS: version: 0, flags:; udp: 4096

;; QUESTION SECTION:

;114.114.114.114.in-addr.arpa.  IN  PTR

 

;; ANSWER SECTION:

114.114.114.114.in-addr.arpa. 330 IN  PTR public1.114dns.com.   #获取FQDN,反解成

功;

 

;; Query time: 39 msec

;; SERVER: 114.114.114.114#53(114.114.114.114)

;; WHEN: Sat Feb 11 19:42:21 CST 2017

;; MSG SIZE  rcvd: 89

注意:dig工具在解析过程中不会检查本机HOST表(即/etc/hosts文件);

②nslookp工具:

用法示例:

由FQDN解析出IP地址:

[root@localhost ~]# nslookup 114.114.114.114

Server:    114.114.114.114

Address:    114.114.114.114#53

 

Non-authoritative answer:

114.114.114.114.in-addr.arpa    name = public1.114dns.com.

 

Authoritative answers can be found from:

由IP地址反解出FQDN:

[root@localhost ~]# nslookup 114.114.114.114

Server:    114.114.114.114

Address:    114.114.114.114#53

 

Non-authoritative answer:

114.114.114.114.in-addr.arpa    name = public1.114dns.com.

 

Authoritative answers can be found from:

③host工具:

用法示例:

由FQDN解析出IP地址:

[root@localhost ~]# host public1.114dns.com.

public1.114dns.com has address 114.114.114.114

由IP地址反解出FQDN:

[root@localhost ~]# host 114.114.114.114

114.114.114.114.in-addr.arpa domain name pointer public1.114dns.com.

(2)本地主机名的配置:

①hostname命令;

②hostnamectl命令(CentOS 7专用);

③配置文件:/etc/sysconfig/network;

①hostname命令

用法示例:

查看当前主机名:

[root@localhost ~]# hostname

localhost.localdomain

将主机名改为

[root@localhost ~]# hostname 

②hostnamectl命令(CentOS 7专用)

用法示例:

显示当前主机名信息:

[root@localhost ~]# hostnamectl 

   Static hostname: localhost

Transient hostname: localhost.localdomain

         Icon name: computer-vm

           Chassis: vm

        Machine ID: dca382f93a984870b93aab37ceaf66dc

           Boot ID: 033b1679890b4e6e9c1bafe6528e9c8e

    Virtualization: vmware

  Operating System: CentOS Linux 7 (Core)

       CPE OS Name: cpe:/o:centos:centos:7

            Kernel: Linux 3.10.0-514.el7.x86_64

      Architecture: x86-64

将主机名改为:

[root@localhost ~]# hostnamectl set-hostname 

[root@localhost ~]# hostnamectl     #注意:该命令会修改配置文件,不会立即生效,但重启后

会永久生效;

   Static hostname: 

   Pretty hostname: 

         Icon name: computer-vm

           Chassis: vm

        Machine ID: dca382f93a984870b93aab37ceaf66dc

           Boot ID: 033b1679890b4e6e9c1bafe6528e9c8e

    Virtualization: vmware

  Operating System: CentOS Linux 7 (Core)

       CPE OS Name: cpe:/o:centos:centos:7

            Kernel: Linux 3.10.0-514.el7.x86_64

      Architecture: x86-64

③配置文件:/etc/sysconfig/network

用法示例:

[root@localhost ~]# vim /etc/sysconfig/network

HOSTNAME=www.linuxidc.com    #注意:此方法不会立即有效,但重启会一直有效; 

网络属性配置文件:

①修改接口属性(IP/NETMASK/GW/DNS)的配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE;

②静态路由的配置文件:/etc/sysconfig/network-scripts/route-IFACE;

①修改接口属性(IP/NETMASK/GW/DNS)的配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE:

该配置文件通过大量参数来定义接口的属性,可通过文本编辑器vim来编辑,也可通过命令行修改此配置文件(在CentOS 6上为system-config-network(setup),在CentOS 7上还支持nmtui)。

配置文件参数:

    DEVICE:此配置文件对应的设备的名称;

    ONBOOT:在系统引导过程中,是否激活此接口;

    BOOTPROTO:激活此接口时通过什么协议来配置此接口的属性;常用的有:dhcp, bootp, 

    static, none;

    PEERDNS:如果BOOTPROTO的值为"dhcp",则是否允许dhcp server分配的DNS服务器指向覆盖本

    地手动指定的DNS服务器指向;默认为允许(yes);

    UUID:此设备的唯一标识;

    IPV6INIT:是否初始化IPv6;

    TYPE:接口类型,常见的有:Ethernet, Bridge;

    DNS1:第一DNS服务器指向;

    DNS2:备用DNS服务器指向;

    DOMAIN:指定搜索域;

    IPADDR:IP地址;

    NETMASK:子网掩码;在CentOS 7上还支持使用PREFIX以长度方式指明子网掩码;

    GATEWAY:默认网关;

    USERCTL:是否允许普通用户控制此设备;

    HWADDR:此设备的MAC地址;

    NM_CONTROLLED:是否使用NetworkManager服务来控制此接口;

修改好配置文件后,需要重启网络服务通过一些脚本读取该配置文件才能生效:

CentOS 6:

方式一:# /etc/init.d/network restart

方式二:# service network restart

CentOS 7:

方式一(推荐):# systemctl restart network.service

方式二:# service network restart

相关的网络服务有:

network

NetworkManager

扩展给网络接口配置多个地址,给每个附加的地址一个网卡别名的实现:

用ifconfig命令直接配置:

[root@loaclhost ~]# ifconfig ens33:0 192.168.1.1/24

[root@loaclhost ~]# ifconfig 

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 10.10.10.140  netmask 255.255.255.0  broadcast 10.10.10.255

        inet6 fe80::e927:7013:71ec:ffd2  prefixlen 64  scopeid 0x20<link>

        ether 00:0c:29:c8:ff:4e  txqueuelen 1000  (Ethernet)

        RX packets 56804  bytes 12970225 (12.3 MiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 18808  bytes 2949415 (2.8 MiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

 

ens33:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 192.168.1.1  netmask 255.255.255.0  broadcast 192.168.1.255

        ether 00:0c:29:c8:ff:4e  txqueuelen 1000  (Ethernet)

 

......(以下省略)......

注意:使用ifconfig命令直接配置网卡别名虽能立即生效,但无法永久生效;

要想永久生效,需要为其添加接口属性配置文件,可复制其他/etc/sysconfig/network-scripts/下的其他接口属性配置文件,然后修改配置即可;而其中配置文件至少包含以下几个部分:

DEVICE=IFACE_LABEL    #指定网卡别名;

BOOTPROTO=static    #网上别名不支持动态获取地址;支持static, none;

IPADDR=    #IP地址;

NETMASK=    #子网掩码;

删除原有其他接口的HWADDR

删除原有其他接口的UUID

因此,对于本例来讲:

[root@loaclhost ~]# cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/networ

k-scripts/ifcfg-ens33:0

[root@loaclhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33:0

TYPE=Ethernet

BOOTPROTO=static

DEFROUTE=yes

DEVICE=ens33:0

ONBOOT=yes

IPADDR=192.168.1.1

NETMASK=255.255.255.0

#保存并退出;

[root@loaclhost ~]# systemctl restart network    #重启网络服务network;

[root@www ~]# ifconfig 

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 10.10.10.140  netmask 255.255.255.0  broadcast 10.10.10.255

        inet6 fe80::20c:29ff:fec8:ff4e  prefixlen 64  scopeid 0x20<link>

        ether 00:0c:29:c8:ff:4e  txqueuelen 1000  (Ethernet)

        RX packets 56847  bytes 12975355 (12.3 MiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 18844  bytes 2952385 (2.8 MiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

 

ens33:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 192.168.1.1  netmask 255.255.255.0  broadcast 192.168.1.255

        ether 00:0c:29:c8:ff:4e  txqueuelen 1000  (Ethernet)

        #配置成功!

 

......(以下省略)...... 

②静态路由的配置文件:/etc/sysconfig/network-scripts/route-IFACE:

当需要用到非默认网关路由时,可通过此配置文件来配置路由条目;

支持两种配置方式:

(1)每行一个路由条目:

TARGET via GW

(2)每三行一个路由条目

ADDRESS#=TARGET

NETMASK#=MASK

GATEWAY#=NEXTHOP

#其中'#'为数字,表示第几组路由条目;

注意:两种配置方式不能混用;

用法示例:

[root@localhost ~]# route -n    #配置前先查看路由表;

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

10.10.10.0      0.0.0.0         255.255.255.0   U     100    0        0 ens33

0.0.0.0         10.10.10.2      0.0.0.0         UG    100    0        0 ens33

 

[root@localhost ~]# vim /etc/sysconfig/network-scripts/route-ens33  #手动编辑路由配置文

件;

100.0.0.0/8 via 10.10.10.2    #采用每一行一个路由条目方式;

 

[root@localhost ~]# systemctl restart network    #重启网络服务network;

[root@localhost ~]# route -n    #查看路由表;

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

10.10.10.0      0.0.0.0         255.255.255.0   U     100    0        0 ens33

100.0.0.0       10.10.10.2      255.0.0.0       UG    100    0        0 ens33   #配置成

功;

0.0.0.0         10.10.10.2      0.0.0.0         UG    100    0        0 ens33

文本图形化编辑

[root@localhost ~]# nmtui

Linux网络属性配置详解

Linux网络属性配置详解

Linux网络属性配置详解

Linux网络属性配置详解

如果配置完成可点击"OK",如果放弃修改可直接退出"quit"。

除了以上介绍的静态指定方式之外,还可通过动态分配方式配置网络属性,一般使用dhcp(Dynamic Host Configure Protocol)协议。

采用动态分配方式只需在接口属性配置文件中指明即可,如下:

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33

BOOTPROTO=dhcp

PDF文档可以到Linux公社资源站下载:

------------------------------------------分割线------------------------------------------

免费下载地址在

用户名与密码都是

具体下载目录在 /2017年资料/3月/20日/Linux网络属性配置详解/

下载方法见

------------------------------------------分割线------------------------------------------

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/14111.html