码迷,mamicode.com
首页 > 其他好文 > 详细

网络的简要配置使用

时间:2019-01-05 14:13:07      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:script   packet   prot   解析   0.11   slot   改ip   iproute   管理   

  • 查看ip命令
  • 网络配置管理
  • 文件配置
  • nmcli命令配置
  • nmtui/setup

  • 计算机网络可以简单分为局域网和广域网。国际标准组织ISO制定了一个层次化的网络通信参考模型--OSI(open system interconnection),每一层定义了其实现的功能以实现设备间网络通信。
    技术分享图片
    但在实际中使用的是TCP/IP协议,(本身包含TCP传输控制协议,IP互联网络协议),tcp?ip模型范围4层将多个网络进行无缝连接。
    IP协议:在相互连接的网络之间传递IP数据报、分配唯一IP地址。
    IP地址:网络号+主机号

    • 查看ip命令
    [root@xt ~]# ip addr
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 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
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
        link/ether 00:0c:29:20:b5:fd brd ff:ff:ff:ff:ff:ff
        inet 192.168.0.112/24 brd 192.168.0.255 scope global dynamic eno16777736
           valid_lft 83592sec preferred_lft 83592sec
        inet6 fe80::20c:29ff:fe20:b5fd/64 scope link 
           valid_lft forever preferred_lft forever
    [root@xt ~]# ifconfig 
    eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 192.168.0.112  netmask 255.255.255.0  broadcast 192.168.0.255
            inet6 fe80::20c:29ff:fe20:b5fd  prefixlen 64  scopeid 0x20<link>
            ether 00:0c:29:20:b5:fd  txqueuelen 1000  (Ethernet)
            RX packets 11796  bytes 926808 (905.0 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 7634  bytes 5484873 (5.2 MiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    • 网络管理配置
      • ifconfig命令:配置网络接口
        用法:
        ifconfig [-v] [-a] [-s] [interface]
        ifconfig [-v] interface [aftype] options | address ...
        第一种用法:查看接口地址,-v:显示详细信息,-a:显示所有接口地址
        第二种用法:配置接口地址
        ifconfig IFACE IP/MASK [up|down] 激活|停止,配置IP
        ifconfig IFACE IP netmask NETMASK
        [root@xt ~]# ifconfig ens36 192.168.175.10/24 up #配置IP并激活
        [root@xt ~]# ifconfig ens36
        ens36: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.175.10  netmask 255.255.255.0  broadcast 192.168.175.255
        inet6 fe80::20c:29ff:fe20:b507  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:20:b5:07  txqueuelen 1000  (Ethernet)
        RX packets 4  bytes 989 (989.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 20  bytes 2076 (2.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        [root@xt ~]# ifconfig ens36 down  #关闭后网卡信息
        [root@xt ~]# ifconfig   
        eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ......
        lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        ....
        [root@xt ~]# systemctl restart network #重启网络服务
        [root@xt ~]# ifconfig 
        ens36: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.175.133  netmask 255.255.255.0  broadcast 192.168.175.255
        inet6 fe80::20c:29ff:fe20:b507  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:20:b5:07  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 1331 (1.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 32  bytes 3252 (3.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0           

        注:这种方式修改,立即生效,只是临时有效,重启服务后失效

      • route命令:路由查看管理,即将被ip route替代
        查看:route -n
        添加用法:
        route add [-net|-host] target [netmask Nm] [gw GW] [[dev] Interface]
        -net:target是网段
        -host:目标为主机
        route add -net 10.0.0.0/8 gw 192.168.1.1 dev eth1
        route add -net 0.0.0.0/0.0.0.0 gw 192.168.1.1
        route add default gw 192.168.1.1
        删除路由:
        route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] Interface]
      • 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协议相关链接
        -u: udp协议连接
        -l: 处于监听状态连接
        -a: 所有状态
        -n:以数字方式显示ip和port,不解析服务名
        -p:显示相关进程及pid
        [root@xt ~]# netstat -tunlp
        Active Internet connections (only servers)
        Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
        tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1168/sshd           
        tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1246/master         
        tcp6       0      0 :::22                   :::*                    LISTEN      1168/sshd           
        tcp6       0      0 ::1:25                  :::*                    LISTEN      1246/master         
        udp        0      0 0.0.0.0:68              0.0.0.0:*                           3069/dhclient       
        udp        0      0 0.0.0.0:68              0.0.0.0:*                           2717/dhclient       

        -显示接口的统计数据
        显示所有接口:netstat -i
        指定接口:netstat -I<INTERFACE>

        [root@xt ~]# netstat -i
        Kernel Interface table
        Iface      MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
        eno16777  1500    15549      0      0 0         10242      0      0      0 BMRU
        ens36     1500       18      0      0 0            51      0      0      0 BMRU
        lo       65536        0      0      0 0             0      0      0      0 LRU
        [root@xt ~]# netstat -Iens36
        Kernel Interface table
        Iface      MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
        ens36     1500       18      0      0 0            51      0      0      0 BMRU
        [root@xt ~]# 
      • iproute服务提供的ip管理工具
        • ip命令显示管理路由、设备
          用法:
          ip [ OPTIONS ] OBJECT { COMMAND | help }
          OBJECT := { link | addr | addrlabel | route | rule | neigh | ntable | tunnel | tuntap | maddr | mroute |
          mrule | monitor | xfrm | netns | l2tp | tcp_metrics }
          ip link:网络设备配置
          ip link set:修改设备属性
          ip link set { dev DEVICE | group DEVGROUP } [ { up | down } ] [ arp { on | off } ]
          [ dynamic { on | off } ]
          [ multicast { on | off } ]
          [ allmulticast { on | off } ]
          [ promisc { on | off } ]
          [ trailers { on | off } ]
          [ txqueuelen PACKETS ]
          [ name NEWNAME ]
          [ address LLADDR ]
          [ broadcast LLADDR ]
          [ mtu MTU ] #默认1500
          [ netns PID ] #用于将接口移动到指定的网络名称空间
          [ netns NAME ]
          [ alias NAME ]
          ip link show : 显示设备的属性
          ip link help :查看命令帮助
          [root@xt ~]# ip addr show ens36 
          3: ens36: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
          link/ether 00:0c:29:20:b5:07 brd ff:ff:ff:ff:ff:ff
          inet 192.168.175.133/24 brd 192.168.175.255 scope global dynamic ens36
          valid_lft 1672sec preferred_lft 1672sec
          inet6 fe80::20c:29ff:fe20:b507/64 scope link 
          valid_lft forever preferred_lft forever
          [root@xt ~]# ip link set ens36 down 
          [root@xt ~]# ip addr show ens36 
          3: ens36: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
          link/ether 00:0c:29:20:b5:07 brd ff:ff:ff:ff:ff:ff
          inet 192.168.175.133/24 brd 192.168.175.255 scope global dynamic ens36
          valid_lft 1648sec preferred_lft 1648sec
          [root@xt ~]# ip addr li ens36 
          3: ens36: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
          link/ether 00:0c:29:20:b5:07 brd ff:ff:ff:ff:ff:ff

          ip netns:网络名称空间管理
          ip netns list:
          ip netns add Name
          ip netns del Name
          ip [-all] netns exec [NAME] cmd ...#在指定名称空间中运行命令

          设置网络名称步骤:在云计算中使用
          1.设置名称
          ip netns add mynet
          2.添加至每个网卡
          ip link set ens36 netns mynet
          3.运行查看
          ip netns exec mynet  ip llink show

          ip address :协议地址管理
          ip addr add :添加地址
          ip addr {add|change|replace} if_address/prefix dev STRING [scope ..] [...] #[broadcast address]: 广播地址,会根据ip和netmask自动计算 [scope scope_value]: 值有global、link、host
          ip addr del :删除IP地址
          ip addr del if_address dev IFACE
          ip addr show :查看地址
          ip addr show dev IFACE
          ip addr flush :清空地址
          ip addr flush dev IFACE

          [root@xt ~]# ip addr show ens36 
          3: ens36: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
          link/ether 00:0c:29:20:b5:07 brd ff:ff:ff:ff:ff:ff
          inet 192.168.175.133/24 brd 192.168.175.255 scope global dynamic ens36
          valid_lft 1049sec preferred_lft 1049sec
          inet 172.16.0.10/32 scope global ens36
          valid_lft forever preferred_lft forever
          [root@xt ~]# ip addr del 172.16.0.10 dev ens36 #删除ip操作
          [root@xt ~]# ip addr show ens36  #查看ip
          3: ens36: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
          link/ether 00:0c:29:20:b5:07 brd ff:ff:ff:ff:ff:ff
          inet 192.168.175.133/24 brd 192.168.175.255 scope global dynamic ens36
          valid_lft 1703sec preferred_lft 1703sec  
          [root@xt ~]# ip addr add 172.16.0.11 dev ens36 #添加ip地址
          [root@xt ~]# ip addr list ens36 
          3: ens36: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
          link/ether 00:0c:29:20:b5:07 brd ff:ff:ff:ff:ff:ff
          inet 192.168.175.133/24 brd 192.168.175.255 scope global dynamic ens36
          valid_lft 1647sec preferred_lft 1647sec
          inet 172.16.0.11/32 scope global ens36
          valid_lft forever preferred_lft forever
          [root@xt ~]# ip addr flush  dev ens36 #清空ens36ip地址
          [root@xt ~]# ip addr list ens36 
          3: ens36: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
          link/ether 00:0c:29:20:b5:07 brd ff:ff:ff:ff:ff:ff

          ip route:路由管理
          ip route add - add new route
          ip route change - change route
          ip route replace - change or add new one
          ip route add [TYPE] PREFIX via gw_ip [dev IFACE] [src src_ip]
          ip route del ip_addr - delete route 删除路由
          ip route show - list routes 查看路由
          ip route flush - flush routing tables清空路由表

          # ip route add 192.168.0.0/24  via 10.0.0.1  dev eth1 src  10.0.20.100    
          # ip  route  add default  via  192.168.0.1
          # ip  route del 192.168.0.0/24
      • ss命令:可以取代netstat来查看链接状态
        用法:
        ss [options] [filter]
        选项:
        -t:TCP协议的相关连接
        -u:UDP相关的连接
        -w:raw socket相关的连接
        -l:监听状态的连接
        -a:所有状态的连接
        -n:数字格式
        -p:相关的程序及其PID
        -e:扩展格式信息
        -m:内存用量
        -o:计时器信息
        filter= [ state TCP-STATE ] [ EXPRESSION ]
        TCP的常见状态:
        All standard TCP states: established, syn-sent, syn-recv, fin-wait-1, fin-wait-2, time-wait,
        closed, close-wait, last-ack, listen and closing.
        EXPRESSION:
        dport =
        sport =
        [root@xt ~]# ss  -tan  state  ESTABLISHED
        Recv-Q Send-Q                 Local Address:Port                                Peer Address:Port              
        0      0                      192.168.0.112:22                                 192.168.0.106:55499              
        0      0                      192.168.0.112:22                                 192.168.0.106:54701              
        0      0                      192.168.0.112:22                                 192.168.0.106:55573              
        0      52                     192.168.0.112:22                                 192.168.0.106:55575              
        0      0                      192.168.0.112:22                                 192.168.0.106:54864              
        [root@xt ~]# ss -tan ‘( sport = :22 )‘
        State       Recv-Q Send-Q            Local Address:Port                           Peer Address:Port              
        LISTEN      0      128                           *:22                                        *:*                  
        ESTAB       0      0                 192.168.0.112:22                            192.168.0.106:55499              
        ESTAB       0      0                 192.168.0.112:22                            192.168.0.106:54701              
        ESTAB       0      0                 192.168.0.112:22                            192.168.0.106:55573              
        ESTAB       0      52                192.168.0.112:22                            192.168.0.106:55575              
        ESTAB       0      0                 192.168.0.112:22                            192.168.0.106:54864              
        LISTEN      0      128                          :::22                                       :::*                  

    以上使用ifconfig/ip配置IP地址等只是对当前有效,关机或者重启服务等操作配置失效,若需要永久生效则可以通过文件配置、nmcli/nmtui有NetworkManage提供的工具配置。

    • 文件配置

      • 配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE,大量参数来定义接口的属性
        DEVICE:此设备文件对应的设备名称
        NAME:可以与device同样,主要在图形界面显示
        ONBOOT:在开机启动过程是否激活
        UUID:此设备的唯一ID号
        BOOTPROTO:接口的协议:dhcp、static、none
        TYPE:接口类型,常见:Ethernet、Bridge
        DNS1:第一DNS服务器指向
        DNS2:备用DNS服务指向
        DNS3:一共可以有三个DNS服务指向
        IPADDR:ipv4地址
        NETMASK:子网掩码,centos支持PREFIX以长度方式指明子网掩码
        GATEWAY:网关
        HWADDR:设备Mac地址
        NM_CONTROLLED:是否使用NetworkManager服务管理
        查看设备的所有信息:dmesg命令
        手动配置一般指定这几个参数即可:
        技术分享图片
        device网络接口的命名:
        centos6之前:主要以ethX,如eth1,eth2...
        centos7:根据Firmware或BIOS所提供的索引信息来命名:
        名称类型:
        o<index>:集成设备的设备索引号;
        s<slot>:扩展槽的索引号;
        x<MAC>:基于MAC地址的命名;
        p<bus>s<slot>:基于总线及槽的拓扑结构进行命名;
        常见有:eno16777736,ens33...
      • 例如添加一块网卡,网卡信息如下:通过配置文件方式
        IP地址:192.168.1.77
        子网掩码:255255.255.0
        网关:192.168.1.254
        DNS:192.168.1.254
        要求:重启网卡后生效,分别查看IP,网关和DNS是否配置成功
        注:以下内容是通过新添加一块网卡ens36来实现,但新添加网卡并没有配置文件,通过复制原有的文件来实现:

        [root@xt network-scripts]# cp ifcfg-eno16777736 ifcfg-ens36
        [root@xt network-scripts]#vim ifcfg-ens36
        
        BOOTPROTO="none"
        NAME="ens36"
        DEVICE="ens36"
        ONBOOT="yes"
        IPADDR=192.168.1.77
        NETMASK=255.255.255.0
        GATEWAY=192.168.1.254
        DNS1=192.168.1.254
        
        [root@xt network-scripts]# systemctl restart network
        [root@xt network-scripts]# ifconfig 
        ens36: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
                        inet 192.168.1.77  netmask 255.255.255.0  broadcast 192.168.1.255
                        inet6 fe80::20c:29ff:fe20:b507  prefixlen 64  scopeid 0x20<link>
                        ether 00:0c:29:20:b5:07  txqueuelen 1000  (Ethernet)
                        RX packets 4  bytes 989 (989.0 B)
                        RX errors 0  dropped 0  overruns 0  frame 0
                        TX packets 20  bytes 2076 (2.0 KiB)
                        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        [root@xt network-scripts]# 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 eno16777736
        0.0.0.0         192.168.1.254   0.0.0.0         UG    101    0        0 ens36
        192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 eno16777736
        192.168.1.0     0.0.0.0         255.255.255.0   U     100    0        0 ens36
        [root@xt network-scripts]# cat /etc/resolv.conf 
        # Generated by NetworkManager
        search xt.com
        nameserver 221.7.128.68
        nameserver 221.7.136.68
        nameserver 192.168.1.254
    • nmcli命令:nmcli - command‐line管理NetworkManage服务,命令参数可以补齐,创建或修改 的会话配置信息会自动保存为网卡配置文件,无需手动编辑,重启依然生效。
      nmcli [ OPTIONS ] OBJECT { COMMAND | help }

      • 查看网卡信息:
        [root@xt tmp]# nmcli connection show
        NAME(网卡名称) UUID TYPE(网卡类型) DEVICE(设备)
        gongsi 86370ae8-b9ed-45b2-9b34-73a6477151fc 802-3-ethernet ens36
        eno16777736 2361aff4-2de8-4868-9fd6-5d30ccdada02 802-3-ethernet eno16777736
        home b0569674-eee5-4622-b5d1-861b828d289d 802-3-ethernet -
        如果想查看某个网卡详细信息:...show [id|uuid]即可
      • 查看网卡连接状态
        [root@xt tmp]# nmcli device status
        DEVICE TYPE STATE CONNECTION
        eno16777736 ethernet connected eno16777736
        ens36 ethernet connected gongsi
        lo loopback unmanaged --
      • OBJECT:agent 、 connection 、 device 、 general 、 help 、 networking、 radio
        device:显示和管理网络接口
        -device command :={ status | show | connect | disconnect | delete | wifi | wimax }
        connection:开始停止和管理网络连接,NetworkManager存储所有的网络配置信息保存在会话中,如L2详细信息,ip地址等,这些信息描述了创建、连接、或激活设备的过程。
        -connection command:= { show | up | down | add | edit | modify | delete | reload | load }
        modify [--temporary] [ id | uuid | path ] <ID> [+|-]<setting>.<property> <value>
        add COMMON_OPTIONS TYPE_SPECIFIC_OPTIONS IP_OPTIONS:添加会话
        修改ip地址等属性:
        ip的配置方法 :auto默认、manual、link-local
        [root@xt ~]# nmcli connection modify home ipv4.addresses 192.168.10.10 ipv4.gateway 192.168.10.1 ipv4.method manual
        Examples:
        nmcli con mod em1-1 ipv4.method manual ipv4.addr "192.168.1.2/24, 10.10.1.5/8" #添加多个ip
        nmcli con mod em1-1 +ipv4.dns 8.8.4.4
        nmcli con mod em1-1 -ipv4.dns 1
        nmcli con mod em1-1 -ipv6.addr "abbe::cafe/56"
        nmcli con mod bond0 +bond.options mii=500
        nmcli con mod bond0 -bond.options downdelay
    • setup/nmtui
      centos7开始使用nmtui图形化管理,之前6的可以使用setup管理,比较简单,配置完重启服务即可。
      技术分享图片

    网络的简要配置使用

    标签:script   packet   prot   解析   0.11   slot   改ip   iproute   管理   

    原文地址:http://blog.51cto.com/12580678/2339122

    (0)
    (0)
       
    举报
    评论 一句话评论(0
    登录后才能评论!
    © 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
    迷上了代码!