2.5 网络配置命令ifconfig,ip,ss,

╄→гoц情女王★ 提交于 2019-12-09 21:35:47

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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!