网络管理2

六、配置网络

    跨网络通信:路由

    路由分类:

        主机路由

        网络路由

        默认路由

    优先级:精度越高,优先级越高

        

    动态主机配置协议DHCP

blob.png

    基本网络配置

        将Linux主机接入到网络,需要配置网络相关设置。

        一般包括如下内容:

            主机名

            IP/mask

            路由:默认网关

            DNS服务器

                主DNS服务器

                次DNS服务器

                第三DNS服务器

    网络配置方式

        静态指定:

            ifcfg: ifconfig, route, netstat

            ip: object {link, addr, route}, ss, tc

            system-config-network-tui (setup)

            配置文件

                CentOS 7:新增工具: nmcli, nmtui

        动态分配:

            DHCP: Dynamic Host Configuration Protocol

    配置网络接口

        接口命名方式: CentOS 6:

            以太网: eth[0,1,2,…]

            ppp: ppp[0,1,2,…]

        fconfig命令

            ifconfig [interface]

            # ifconfig -a

            # ifconfig IFACE [up|down]

        ifconfig interface [aftype] options | address …

            # ifconfig IFACE IP/mask [up]

            # ifconfig IFACE IP netmask MASK

        注意:立即生效;

        启用混杂模式: [-]promisc

    route命令

        路由管理命令

        查看: route -n

        添加: route add

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

        目标: 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 gw 172.16.0.1 dev eth0

            # route add -net 192.168.0.0/24 gw 172.16.0.1 dev

        默认路由,网关: 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

        删除: route del

            route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If]

        目标: 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

    配置动态路由

        通过守护进程获取动态路由

            安装quagga包,支持多种格式的RIP、 OSPF和BGP

            命令vtysh配置

    netstat命令

        netstat – Print network connections, routing tables, interface,statistics, masquerade connections, and multicast memberships

        显示网络连接:

            netstat [–tcp|-t] [–udp|-u] [–raw|-w] [–listening|-l] [–all|-a] [–numeric|-n] [–extend|-e[–extend|-e]] [–program|-p]

            -t: tcp协议相关

            -u: udp协议相关

            -w: raw socket相关

            -l: 处于监听状态

            -a: 所有状态

            -n: 以数字显示IP和端口;

            -e:扩展格式

            -p: 显示相关进程及PID

        常用组合:

            -tan, -uan, -tnl, -unl

        显示路由表:

            netstat {–route|-r} [–numeric|-n]

                -r: 显示内核路由表

                -n: 数字格式

        显示接口统计数据:

            netstat {–interfaces|-I|-i} [iface] [–all|-a] [–extend|-e] [–program|-p] [–numeric|-n]

            # netstat -i

            # netstat -IIFACE

            #ifconfig -s eno16777736

    ip命令

        配置Linux网络属性: ip命令

        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:激活或禁用指定接口

                        ifup/ifdown

                    show [dev IFACE]:指定接口

                        [up]:仅显示处于激活状态的接口

        ip addr { add | del } IFADDR dev STRING

            [label LABEL]:添加地址时指明网卡别名

            [scope {global|link|host}]:指明作用域

                global: 全局可用;

                link: 仅链接可用;

                host: 本机可用;

            [broadcast ADDRESS]:指明广播地址

        ip address show – look at protocol addresses

            [dev DEVICE]

            [label PATTERN]

            [primary and secondary]

        ip address flush – 使用格式同show

            ip addr add 172.16.100.13/16 dev eth0 label eth0:0

            ip addr del 172.16.100.13/16 dev eth0 label eth0:0

            ip addr flush dev eth0 label eth0:0

        ip route – routing table management

            添加路由: ip route add

            ip route add TARGET via GW dev IFACE src SOURCE_IP

                TARGET:

                    主机路由: IP

                    网络路由: NETWORK/MASK

                ip route add 192.168.0.0/24 via 172.16.0.1

                ip route add 192.168.1.13 via 172.16.0.1

                添加网关: 

                    ip route add default via GW dev IFACE

                    ip route add default via 172.16.0.1

            删除路由:

                ip route delete

                ip route del TARGET

            显示路由: ip route show|list

            清空路由表:

                ip route flush [dev IFACE] [via PREFIX]

                ip route flush dev eth0

    ss命令

        格式: ss [OPTION]… [FILTER]

        netstat通过遍历proc来获取socket信息, ss使用netlink与内核tcp_diag模块通信获取socket信息。

        选项:

            -t: tcp协议相关

            -u: udp协议相关

            -w: 裸套接字相关

            -x: unix sock相关

            -l: listen状态的连接

            -a: 所有

            -n: 数字格式

            -p: 相关的程序及PID

            -e: 扩展的信息

            -m:内存用量

            -o:计时器信息

        FILTER := [ state TCP-STATE ] [ EXPRESSION ]

        TCP的常见状态:

            tcp finite state machine:

                LISTEN: 监听

                ESTABLISHED:已建立的连接

                FIN_WAIT_1

                FIN_WAIT_2

                SYN_SENT

                SYN_RECV

                CLOSED

        EXPRESSION:

            dport =

            sport =

            示例:’ ( dport = :ssh or sport = :ssh )’

        常用组合:

            -tan, -tanl, -tanlp, -uan

        常见用法

            ss -l 显示本地打开的所有端口

            ss -pl 显示每个进程具体打开的socket

            ss -t -a 显示所有tcp socket

            ss -u -a 显示所有的UDP Socekt

            ss -o state established '( dport = :smtp or sport = :smtp )' 显示所有已建立的SMTP连接

            ss -o state established '( dport = :http or sport = :http )' 显示所有已建立的HTTP连接

            ss -x src /tmp/.X11-unix/* 找出所有连接X服务器的进程

            ss -s 列出当前socket详细信息:

    网络配置文件

        IP、 MASK、 GW、 DNS相关配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE

    路由相关的配置文件:/etc/sysconfig/network-scripts/route-IFACE

    /etc/sysconfig/network-scripts/ifcfg-IFACE:说明参考/usr/share/doc/initscripts-9.49.30/sysconfig.txt

        DEVICE:此配置文件应用到的设备

        HWADDR:对应的设备的MAC地址

        BOOTPROTO:激活此设备时使用的地址配置协议,常用的dhcp, static, none, bootp

        NM_CONTROLLED: NM是NetworkManager的简写,此网卡是否接受NM控制;建议CentOS6为“ no”

        ONBOOT:在系统引导时是否激活此设备

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

        UUID:设备的惟一标识

        IPADDR:指明IP地址

        NETMASK:子网掩码

        GATEWAY: 默认网关

        DNS1:第一个DNS服务器指向

        DNS2:第二个DNS服务器指向

        USERCTL:普通用户是否可控制此设备

        PEERDNS:如果BOOTPROTO的值为“ dhcp”,是否允许dhcp server分配的dns服务器指向信息直接覆盖至/etc/resolv.conf文件中

    本地解析器

        解析器执行正向和逆向查询

        /etc/hosts

            本地主机名数据库和IP地址的映像

            对小型独立网络有用

            通常,在使用DNS前检查

            getent hosts 查看/etc/hosts 内容

    dns名字解析

        /etc/resolv.conf

            nameserver DNS_SERVER_IP1

            nameserver DNS_SERVER_IP2

            nameserver DNS_SERVER_IP3

        /etc/nsswitch.conf

            与/etc/hosts相比优先于DNS

        正解: FQDN–>IP

            # dig -t A FQDN

            # host -t A FQDN

        反解: IP–>FQDN

            # dig -x IP

            # host -t PTR IP

    网络配置文件

        /etc/sysconfig/network-scripts/route-IFACE

            注意:需service network restart 生效

            两种风格:

                (1) TARGET via GW

                    如:10.0.0.0/8 via 172.16.0.1

                (2) 每三行定义一条路由

                    ADDRESS#=TARGET

                    NETMASK#=mask

                    GATEWAY#=GW

    网卡别名

        对虚拟主机有用

        将多个IP地址绑定到一个NIC上

            eth0:1

            eth0:2

            eth0:3

        ifconfig命令:

            ifconfig eth0:0 192.168.1.100/24 up

            ifcofig rth0:0 down

        ip命令:

            ip addr add 172.16.1.2/16 dev eth0

            ip addr add 172.16.1.1/16 dev eth0 label eth0:0

            ip addr del 172.16.1.1/16 dev eth0 label eth0:0

            ip addr flush dev eth0 label eth0:0

    设备别名

        为每个设备别名生成独立的接口配置文件

            关闭NetworkManager服务

            ifcfg-ethX:xxx

            必须使用静态联网

                DEVICE=eth0:0

                IPADDR=10.10.10.10

                NETMASK=255.0.0.0

                ONPARENT=yes

        注意: service network restart 生效

        参考/usr/share/doc/initscripts-*/sysconfig.txt

    网络配置

        Linux网络属性配置的tui(text user interface):

            system-config-network-tui

            setup

            注意:记得重启网络服务方能生效

        配置当前主机的主机名:

            hostname [HOSTNAME]

            /etc/sysconfig/network

            HOSTNAME=

    网卡名称

        网络接口识别并命名相关的udev配置文件:/etc/udev/rules.d/70-persistent-net.rules

            查看网卡:

                dmesg |grep -i eth

                ethtool -i eth0

            卸载网卡驱动:

                modprobe -r e1000

                rmmod e1000

            装载网卡驱动:

                modprobe e1000

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

(0)
上一篇 2016-09-09 20:31
下一篇 2016-09-09 20:59

相关推荐

  • 网络N23期第二周:linux上的目录与文件管理命令,bash的工作特性等

    1、Linux上的目录与文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 1.1 mkdir  创建目录 使用方法:mkdir [OPTION]… DIRECTORY… 常用选项: -p:按需创建父目录 -m:创建目录权限 -v:输出详细创建目录过程 实例: 创建/tmp/test2/test3目录,定义权限为rwxrw-rw-,并详细显…

    Linux干货 2016-10-09
  • 2016-08-12作业

    1、查找/var 目录下属主为root ,且属组为mail 的所有文件 [root@localhost bin]# find /var -user root -group mail /var/spool/mail /var/spool/mail/root   2、查找/var 目录下不属于root 、lp 、gdm 的所有文件 find /var …

    Linux干货 2016-08-15
  • Linux常用基础命令

    pwd显示工作目录 [root@localhost ~]# pwd/root cd 切换回家目录,注意:bash中,~表示家目录: [root@localhost ~]# cd[root@localhost ~]# cd ~USERNAME:切换至指定用户的家目录;cd ~切换回自己的家目录; cd -:在上一次所在目录与当前目录之间来回切换; […

    Linux干货 2017-06-26
  • 【招聘福利】深圳/系统运维工程师/薪资弹性,可面谈

    深圳市鑫顺诺科技有限公司 有意向的学员,请联系magedu-小助手QQ:1522609717 职位职能: 系统运维工程师岗位职责:1、公司日常机房网络和办公室网络管理调优、日常办公电脑维护。2、管理、维护网站服务器运行状态,处理系统运行故障;3、负责服务器集群的操作系统安装、升级、定制、部署与维护工作;4、负责服务器集群的系统监控和自动化脚本的设计与部署;5…

    Linux干货 2015-11-06
  • Linux的用户组和权限管理之特殊权限及ACL的使用

    用户组和权限管理 一、了解和使用批量新建用户和批量修改用户密码: ##用户创建的模板和配置文件的存放位置:/etc/default/useradd;/etc/skel/* ;/etc/login.defs## 批量新建用户(newusers):适合用于新老机器转换时,迁移系统上的用户。 使用格式: newusers  passwd  fi…

    Linux干货 2016-08-04
  • 使用 nice、cpulimit 和 cgroups 限制 cpu 占用率

    Linux内核是一名了不起的马戏表演者,它在进程和系统资源间小心地玩着杂耍,并保持系统的正常运转。 同时,内核也很公正:它将资源公平地分配给各个进程。 但是,如果你需要给一个重要进程提高优先级时,该怎么做呢? 或者是,如何降低一个进程的优先级? 又或者,如何限制一组进程所使用的资源呢? 答案是需要由用户来为内核指定进程的优先级 大部分进程启动时的优先级是相同…

    Linux干货 2015-02-14