Linux网络属性配置

 

如何将linux主机接入到TCP/IP网络中:

    第一步:
        配置IP/NETMASK(ip地址、子网掩码):本地通信
    第二步:
        配置路由(网关):跨网络通信
    第三步:
        配置DNS服务器地址:基于主机名的通信
            主DNS服务器地址
            备用DNS服务器地址
            第三备用DNS服务器地址

Linux主机配置网络的方式

    1、静态指定(命令):
        ifcfg家族:
            ifconfig:配置IP,NETMASK
            route:路由
            etstat:状态及统计数据查看
        iproute2家族:
            ip OBECT:
                addr:地址和掩码
                link:接口
                route:路由
                ss:状态及统计数据查看
        CentOS:nm家族:
            nmcli:命令行工具
            nmtui:图形化配置界面(CentOS 7)
                注:CentOS 6图形化界面需使用setup命令

    2、修改相关配置文件:
        RedHat及相关发行版配置文件位置:
            /etc/sysconfig/network-scripts/ifcfg-NETCARD_NAME
        DNS服务器指定配置文件:
            /etc/resolv.conf

    3、动态分配:
        依赖于本地网络中有DHCP服务

网络配置命令

ifcfg命令家族:

ifconfig命令
    命令用法:
        ifconfig interface [aftype] options | address ...
            # ifconfig IFACE IP/MASK [UP|down]
            # ifconfig IFACE IP netmask NETMASK
    常用选项:
        -a:显示所有接口,包括inactive状态接口
        [-]promisc:启用或禁用该接口的混杂模式。
route命令:路由查看及管理
    路由条目类型:
        主机路由:目标地址为单个IP
        网络路由:目标地址为IP网络
        默认路由:目标为任意主机, 0.0.0.0/0.0.0.0

    查看:
        route -n

    添加:
        route add  [-net|-host] target [netmask Nm] [gw Gw]    [[dev] If]        

                示例:添加默认网关
                    # route add -net 0.0.0.0/0.0.0.0 gw x.x.x.x 
                    # route add default gw x.x.x.x 
    删除:
        route del [-net|-host] target [gw Gw]  [netmask  Nm] [[dev] If]

                示例:删除默认网关
                    # route del default
netstat命令:
    显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。
    显示路由表:
        netstat -rm
            -r:显示内核路由表
            -n:数字格式
    显示网络连接:
        netstat [--tcp|-t] [--udp|-u] [--udplit|-U] [--stcp|-S] [--raw|-w] [--listening|-l] [--all|-a] [--numeric|-n] [--extend|-e[--extend|-e]] [--program|-p]

            -t:TCP协议的相关连接,连接均有其状态;FSM
            -u:UDP相关的连接
            -w:raw socket相关的连接
            -l:处于监听状态的连接
            -a:所有状态
            -n:以数字格式显示IP和port
            -e:扩展格式
            -p:显示相关的进程及ID

            常用组合:
                -tan、-uan、-tnl、-unl、-yunlp

            传输层协议:
                tcp:面向连接的协议,通信开始之前,要建立一个虚链路,通信完成后还要拆除连接
                udp:无连接的协议,直接发送数据报文

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

            所有接口:
                netstat -i
            指定接口:
                netstat -I<IFace>

iproute家族:

ip命令:
    显示或操纵Linux主机的路由、网络设备、策略路由和隧道,是Linux下较新的功能强大的网络配置工具。
命令用法:
    ip [ OPTIONS ] OBJECT { COMMAND | help }
        OBJECT:={link|addr|route}
            注:OBJECT可简写,单个OBJECT的子命令也可以简写

ip OBJECT:
    网络设备配置:ip link
        ip link set-change device attributes

            dev NAME(Ddefault):指明要管理的设备,dev关键字可省略
            up和down:
            multicast on或multicast off:启用或禁用多播功能
            name NAME:重命名接口
            mtu NUMBER:设置MTU的大小,默认为1500
            netns PID:ns为namespace,用于将接口移动到指定的网络名称空间

        ip link show:显示设备的属性 

        ip link help:显示简要使用帮助

    IP地址管理:ip-address
        添加IP地址:ip address add
            ip addr IFADDR dev IFACE

                label NAME:为额外添加的地址指明接口别名
                [broadcast ADDRESS]:广播地址,会根据IP和NETMASK自动计算得到
                [scope SCOPE_VALUE]:
                    global:全局可用
                    link:接口可用
                    host:仅本机可用

        删除IP地址:ip address delete
            ip addr delete IFADDR dev IFACE

        查看ip地址:ip address show
            [IFACE]:仅显示指定接口的地址

    管理路由表:ip-route
        添加新路由:ip route add

            示例: 设置到网络10.0.0/24的路由经过网关193.233.7.65

                # ip route add 10.0.0/24 via 193.233.7.65

        修改路由:ip route change 

            示例: 修改到网络10.0.0/24的直接路由,使其经过设备dummy

              # ip route chg 10.0.0/24 dev dummy
              
     删除路由:ip route delete
      
     列出路由:ip route show

ss命令:查看网络状态信息

    命令用法:
        ss [options] [ FILTER ]    
    常用选项:
        -t:TCP协议相关的连接
        -u:UDP相关的连接
        -w:raw socket相关的连接
        -l:监听状态的连接
        -a:所有状态的连接
        -n:数字格式
        -p:相关的程序及其PID
        -e:扩展格式信息                
        -m:内存用量
        -o:计算器信息

配置文件:

    IP/NETMASK/GW/DNS等属性的配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE
       IFACE:接口名称
    路由相关配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE
    配置文件/etc/sysconfig/network-scripts/ifcfg-IFACE通过大量参数来定义接口,其可通过vim等文本编辑器直接修改,也可以使用专用的命令进行修改(CentOS 6:system-config-network(setup),CentOS 7: nmtui)
ifcfg-IFACE配置文件参数:
    DEVICE:此配置文件对应的设备的名称
    ONBOOT:在系统引导过程中,是否激活此接口
    UUID:此设备的唯一标识
    IPV6INIT:是否初始化IPv6
    BOOTPROTO:激活此接口时使用什么协议来配置接口属性,常用的有dhcp、bootp、static、none
    TYPE:接口类型,常见的有Ethernet,Bridge
    DNS1:第一DNS服务器指向
    DNS2:备用DNS服务器指向
    DOMAIN:DNS搜索域
    IPADDR:ip地址
    NETMASK:子网掩码;CentOS 7支持使用PREFIX以长度方式指明子网掩码
    GATEWAY:默认网关
    USERCTL:是否 允许普通用户控制此设备
    PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向覆盖本地手动指定的DNS服务器指向,默认为允许
    HWADDR:设备MAC地址
    NM_CONTRILLED:是否使用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/ifcfg-IFACE
        支持两种配置方式,但不可混用:
            (1)每行一个路由条目:
                TARGET via GW
            (2)每三行一个路由条目:
                ADDRESS#=TARGET
                NETMASK#=MASK
                GATEWAY#=NEXTHOP
`

给接口配置多个地址

ip addr之外,ifconfig或配置文件都可以
    1、ifconfig IFACE_LABEL IPADDR/NETMASK
        IFACE_LABEL:eth0:0,eth0:1,...
    2、为别名添加配置文件
        DEVICE=IDACE_LABEL
        BOOTROTO:网上别名不支持动态获取地址
            static,none

 

原创文章,作者:641348038@qq.com,如若转载,请注明出处:http://www.178linux.com/63884

(0)
641348038@qq.com641348038@qq.com
上一篇 2016-12-16
下一篇 2016-12-16

相关推荐

  • M20 – 1- 第二周博客(2):Linux的文件系统与结构

    Linux系统对于一个初学者来说,其实并不那么容易.所以了解其系统的结构,及其表示的含义是非常重要的.否则安装好系统后,都无从下手.也不知道怎么办。下面介绍一下Linux 的目录结构.及每个目录表示的含义.方便初学者学习和使用Linux系统。 从上图可以看出Linux的目录结构属于树状型的,是否已经对Linux的结构有个大概的认识了呢,接下来讲的是这些目录中…

    Linux干货 2016-08-02
  • tomcat配置详解

    主程序: ·tomcat ·tomcat-admin-webapps ·tomcat-webapps ·tomcat-docs-webapp ·java-1.8.0-openjdk 配置文件: 配置文件目录:/etc/tomcat 主配置文件:server.xml webapps存放位置:/var/lib/tomcat/webapps/ webapps的根目…

    2017-08-08
  • sed行编辑器

    Linux文本处理三剑客之一:sed(Stream Editor)流编辑器 sed:     将指定的文本文件内容逐行读取至sed的临时内存空间当中,称为"模式空间",而后逐行查看是否被sed的地址定界所匹配到,如果匹配,则执行相应的编辑操作,否则,默认将模式空间中的内容打印至标准输出  …

    Linux干货 2016-08-15
  • 马哥教育第20期-第二周课程练习

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 cp:复制命令 用法: cp [源文件] [目标地址]           cp  vimrc /tmp/         cp [源文件1] [源文件2] ……

    Linux干货 2016-06-27
  • linux磁盘管理及文件系统

    linux磁盘管理及文件系统 硬盘存储术语    head:磁头          track:磁道          cylinder: 柱面    &nbsp…

    Linux干货 2016-08-26

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-23 12:36

    赞~总结的比较详细了~~注意在实战环境中要把配置落到相关配置文件中~继续加油~