网络基础配置

Posted ckh2014

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络基础配置相关的知识,希望对你有一定的参考价值。

基础命令:ifconfig/route/netstat,ip/ss,nmcli

一、ifconfig/route/netstat相关命令

1.  ifconfig - configure a network interface

基本用法:
    ifconfig [interface]
                # ifconfig -a  //查看本机所有网卡配置相关信息
   ifconfig interface [aftype] options | address...
                # ifconfig IFACE IP/mask   //设置网络ip及子网掩码,这里子网掩码为长度
                # ifconfig IFACE IP newmask MASK  //设置网络ip及netmask,这里子网掩码为具体netmask
          # ifconfig IFACE {down | up}  //启用或停用网卡设备
          实例:ifconfig eth0 down;ifconfig eth0 up  //重新启用网卡设备

2.  route - show / manipulate the IP routing table

基本用法:
    查看路由: route -n
    添加路由: route add
    删除路由: route del
实例:
    添加主机路由: 192.168.1.3 网关: 172.16.0.1
     # route add -host 192.168.1.3 gw 172.16.0.1 dev eth0

    添加网络路由: 192.168.0.0 网关:172.16.0.1
     #route add -net 192.168.0.0 netmask 255.255.255.0 172.16.0.1 dev eth0
       或#route add -net 192.168.0.0/24 172.16.0.1 dev eth0

    添加默认路由:网关:172.16.0.1
     # route add -net 0.0.0.0 netmask 0.0.0.0 gw 172.16.0.1
       或 # route add default gw 172.16.0.1
删除路由:
    删除主机路由:192.168.1.3 网关: 172.16.0.1
     # route del -host 192.168.1.3

    删除网络路由:192.168.0.0 网关:172.16.0.1
     # route del -net 192.168.0.0 netmask 255.255.255.0

3. netstat - 显示网络连接,路由表,接口状态,伪装连接,网络链路信息和组播成员组

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

         常用组合: -atn, -uan, -tnl, -unl
显示路由信息:netstat {--route|-r}[--numeric|-n] 
                 -r: 显示内核路由表
                 -n: 数字格式

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

二、ip/ss命令

1.  ip - show / manipulate routing, devices, policy routing and tunnels

基本用法:ip [ OPTIONS ] OBJECT { COMMAND | help }
           OBJECT := {link | addr | route}
ip link - network device configuration
                set
                    dev IFACE
                    可设置属性:
                        up and down : 激活或禁用指定接口
                show 
                    [dev IFACE]
                    [up]: 仅显示处于激活状态的接口
ip address - protocol address management
                ip addr { add | del } IFADDR dev STRING
                    [label LABEL]: 添加地址时指明网卡别名
                    [scope {global | link | host}]    :指明作用域                            global: 全局可用
                            link: 仅链接有用
                            host: 仅本机可用
                    [broadcast ADDRESS]
                ip address show - look at protocol address
                    [dev DEVICE]
                    [label PATTERN]
                    [primary and secondary]
ip route - routiing table management
                ip route add 
                     添加路由: ip route add TARGET via GW dev IFACE src SOURCE_IP
                        TARGET:
                            主机路由: IP
                            网络路由: NETWORK/MASK
                     添加网关: ip route add default via GW dev IFACE
                ip route delete
                    删除路由:
                            ip route del TARGET                    
                ip route show 
                ip route flush
                        [dev IFACE]:
                        [via PREFIX]:

2.  ss - another utility to investigate sockets

基本用法:
    ss命令:ss [OPTION]...[FILTER]
                    选项:
                        -t: tcp协议相关
                        -u: udp协议相关
                        -w: 裸套接字相关
                        -x: unix sock相关
                        -l: linten状态的连接
                        -a: 所有
                        -n: 数字格式
                        -p: 相关的程序及PID
                        -e: 扩展的信息
                        -m: 内存信息
                        -o: 计时器信息

                        [FILTER] := [ state TCP-STATE ][ EXPRESSION ]
        常用组合: -atn, -atnl, -atnlp, -uan

三、nmcli命令

1.  nmcli - command-line tool for controlling NetworkManager

基本用法:nmcli [ OPTIONS ] OBJECT { COMMAND | help }
                device - show and manage network interfaces
                connection - start,stop,and manage network connections
[[email protected] ~]# nmcli device status  //查看网卡连接状态
DEVICE  TYPE      STATE   CONNECTION 
ens33   ethernet  连接的  ens33      
lo      loopback  未托管  --         
[[email protected] ~]# nmcli device show ens33  //查看ens33网络连接相关信息
GENERAL.DEVICE:                         ens33
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         00:0C:29:46:61:4F
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (连接的)
GENERAL.CONNECTION:                     ens33
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveCo
WIRED-PROPERTIES.CARRIER:               开
IP4.ADDRESS[1]:                         192.168.0.114/24
IP4.GATEWAY:                            192.168.0.1
IP4.ROUTE[1]:                           dst = 0.0.0.0/0, nh = 192.168.0.1, mt = 
IP4.ROUTE[2]:                           dst = 192.168.0.0/24, nh = 0.0.0.0, mt =
IP4.DNS[1]:                             192.168.0.1
IP4.DOMAIN[1]:                          www.tendawifi.com
IP6.ADDRESS[1]:                         fe80::c547:7f8e:8399:2a8e/64
IP6.GATEWAY:                            --
IP6.ROUTE[1]:                           dst = ff00::/8, nh = ::, mt = 256, table
IP6.ROUTE[2]:                           dst = fe80::/64, nh = ::, mt = 256
如何修改IP地址等属性:
     # nmcli connection modify IFACE [+|-]setting.property value
           setting.property:
                         ipv4.addresses
                         ipv4.gateway
                         ipv4.dns1
                         ipv4.method
                             manual
实例:
   nmcli connection modify ens33 ipv4.addresses 192.168.0.105/24  //修改网卡地址
   nmcli con down ens33;nmcli con up ens33  //需要重新启用网卡,配置的地址才生效   
  
   nmcli con modify ens33 -ipv4.addresses   //移除某个ip地址

   nmcli con modify ens33 +ipv4.dns 192.168.0.1  //增加一个dns

四、配置文件的修改

IP、MASK、GW、DNS相关配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE
路由相关的配置文件: /etc/sysconfig/network-scripts/rout-IFACE  //默认没有这个文件,可以添加,比如route-ens33
/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: 子网掩码
            GATWAY:  默认网关
            DNS1:  第一个DNS服务器指向
            DNS2:  第二个DNS服务器指向

            USERCTL:  普通用户是否可激活此设备
            PEERDNS:  如果BOOTPROTO的值为dhcp,是否允许dhcp server分配的dns服务器指向信息直接覆盖至
                            /etc/resolv.conf文件中

/etc/sysconfig/network-scripts/route-IFACE  //添加路由配置文件
    两种风格:
      1.TARGET via GW

      2.每三行定义一条路由信息
        ADDRESS#=TARGET
        NETMASK#=mask
        GATEWAY#=GW

配置完,需要重启网络服务,配置文件才生效
  比如: CentOS6:   service network restart或者/etc/rc.d/int.d/network restart
          CentOS7:   systemctl restart network      

 

  


















以上是关于网络基础配置的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段11——vue路由的配置

VSCode自定义代码片段11——vue路由的配置

VSCode自定义代码片段14——Vue的axios网络请求封装

VSCode自定义代码片段14——Vue的axios网络请求封装

VSCode自定义代码片段14——Vue的axios网络请求封装

VS Code配置markdown代码片段