• 网络管理


    查看及测试网络

     启用接口:ifup ethX
    禁用接口:ifdown ethX

    网络配置以text文件存储:/etc/sysconfig/network-scripts/ifcfg-ethX
    完整的选项在 /usr/share/doc/initscripts-*/sysconfig.txt下

    如果在/etc/sysconfig/network-scripts/ifcfg-ethX和/etc/sysconfig/network都设置了网关并且发生冲突,
    则/etc/sysconfig/network-scripts/ifcfg-ethX会覆盖/etc/sysconfig/network下的网关。

    Loopback: lo:不能删除或down掉,就会导致自己访问自己的服务都访问不到

    ifconfig

    ifconfig         查看活动接口信息
    ifconfig -a        查看所有接口信息(包括非活动)
    ifconfig eth0    查看指定eth0接口信息

    hostname

    hostname        查看主机名

    route

    route -n        查看网关(UG)

    arp

    arp   –n        查看arp缓存表 
           -a    列出所有条目

    netstat

      netstat -nr    = route -n    查看网关
       netstat -ln | grep :端口    查看该端口是否开启
       netstat -tulnp | grep 服务名    查看该服务开启那些端口
       netstat -anptu | grep ESTABL    查看已与本机建立的TCP连接

    ping

    ping    -c 包个数    测试网络连通性

    traceroute

    traceroute = tracert    路由跟踪

    host

    host 域名          DNS解析

     nslookup

     nslookup 域名
       >server        查看当前主机的dns地址

    dhclient

    dhclient    //更新本机获取DHCP服务器解析

    mtr

    结合ping和traceroute的工具

    配置网络地址

    使用命令调整网络参数(临时)

    设置ip

      ifconfig eth0 192.168.1.1    设置ip
       ifdown eth0        禁用eth0
       ifup eth0        启用eth0
       ifconfig eth0:0 ip    设置虚拟接口ip

    添加删除默认网关路由(网关必须和当前主机在同一网段)

    route add  default  gw  网关(下一跳)       //添加
    route del  default  gw  网关(下一跳)       //删除

    添加删除指定(静态)路由

    route add  -net  目标网段地址/子网掩码  gw  网关(下一跳)  //添加
    route del  -net  目标网段地址/子网掩码              //删除

    设置主机名:

    hostname 主机名

    定义本地hostname

    邮件服务与hostname相关

    邮件服务首先读取/etc/hosts

    静态绑定和删除arp

    
    

    arp -s [ip地址] [MAC地址]  //静态绑定

    
    

      arp -d ip 删除指定arp记录

     

     通过配置文件修改网络参数(永久)

    设置ip

    #vim /etc/sysconfig/network-scripts/ifcfg-eth0
    DEVICE=eth0              设备名
    ONBOOT=yes              启动是否加载
    BOOTPROTO=static/none     dhcp则为自动获取
    IPADDR=192.168.4.1        ip地址
    NETMASK=255.255.255.0     子网掩码
    MACADDR=xx:xx:xx:xx:xx:xx 修改mac地址
    PEERDNS=no              禁止dhcp获取时修改resolv.conf文件

    网络接口配置文件:

    /etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME
    DEVICE=: 关联的设备名称,要与文件名的后半部“INTERFACE_NAME”保持一致; 
    BOOTPROTO={static|none|dhcp|bootp}: 引导协议;要使用静态地址,使用static或none;dhcp表示使用DHCP服务器获取地址;
    IPADDR=: IP地址
    NETMASK=:子网掩码
    GATEWAY=:设定默认网关;
    ONBOOT=:开机时是否自动激活此网络接口;
    HWADDR=: 硬件地址,要与硬件中的地址保持一致;可省;
    USERCTL={yes|no}: 是否允许普通用户控制此接口;
    PEERDNS={yes|no}: 是否在BOOTPROTO为dhcp时接受由DHCP服务器指定的DNS地址;
    
    不会立即生效,但重启网络服务或主机都会生效;

    网卡的定义方式:
    RHEL5: /etc/modprobe.conf
    alias    //由alias定义

    RHEL6: /etc/udev/rules.d/70-persistent-net.rules
    由udev定义

    修改主机名与网关

    #vim /etc/sysconfig/network
    HOSTNAME=XXX     //修改主机名 修改完需要vim  /etc/hosts做个映射文件
    GATEWAY=192.168.4.254    网关

    设置域名ip对应关系

    #vim /etc/hosts        ip地址与主机名对应关系
    格式:
    ip    FQDN    主机头

    # service network restart   //更新加载新配置的网络类配置,和更新主机名

    1.主机名和IP地址的映射关系

    2.首先查询hosts文件,再查询DNS

    /etc/resolv.conf

    /etc/nsswitch.conf

     

     

    Hosts文件的查询速度远远快于DNS

     

     

    指定DNS地址

    #vim /etc/resolv.conf    设置dns,最多3条
    search xxx.com      //自动搜索所在的域,依照主机名的域而定
    nameserver 202.106.0.20

    DNS客户端配置文件/etc/resolv.conf
    nameserver最多只能由3条,并且只有在第一个nameserver down掉,第二个nameserver才生效。

    开启Linux路由功能

    sysctl命令及改变net.ipv4.ip_forward = 1方法

    命令格式:
    
        sysctl [-n] [-e] -w variable=value
    
        sysctl [-n] [-e] -p <filename> (default /etc/sysctl.conf)
    
        sysctl [-n] [-e] -a

    常用参数的意义:

     -w   临时改变某个指定参数的值,如
    
             sysctl -w net.ipv4.ip_forward=1
    
        -a   显示所有的系统参数
    
        -p   从指定的文件加载系统参数,如不指定即从/etc/sysctl.conf中加载

     如果仅仅是想临时改变某个系统参数的值,可以用两种方法来实现,例如想启用IP路由转发功能:

        1) #echo 1 > /proc/sys/net/ipv4/ip_forward
    
        2) #sysctl -w net.ipv4.ip_forward=1



        以上两种方法都可能立即开启路由功能,但如果系统重启,或执行了

      

     # service network restart



     所设置的值即会丢失,如果想永久保留配置,可以修改/etc/sysctl.conf文件

     将 net.ipv4.ip_forward=0改为net.ipv4.ip_forward=1

     即:

    [root@localhost ~]# vim /etc/sysctl.conf
    ...
    net.ipv4.ip_forward = 1      //开启路由功能
    # sysctl –p   //激活配置与查看路由功能是否开启

    指定路由

    # cat /etc/sysconfig/network-scripts/route-eth1
    10.0.0.0/8     via 10.20.101.1 dev eth1
    192.168.0.0/16 via 10.20.101.1 dev eth1
    
    格式:
    需要路由的网段 via  下一跳网关IP dev  与下一跳网关相连的网卡 

    路由:

    /etc/sysconfig/network-scripts/route-ethX
    添加格式一:
    DEST    via     NEXTHOP
    
    添加格式二:
    ADDRESS0=      //目标地址
    NETMASK0=
    GATEWAY0=

    内核与模块管理

    内核职责:

    1.系统初始化: 检测硬件资源和启动系统
    
    2.进程调度: 决定进程应该运行的时间
    
    3内存管理: 给运行的进程分配内存
    
    4.安全: 强制权限、SELinux上下文和防火墙规则
    
    5.提供buffer和cache加速硬件访问

    参考:

    kernel-doc

    /etc/modprobe.conf:该文件用来加载所有的模块参数

     读取顺序:首先计算机尝试加载该模块,同时读取/etc/modprobe.conf文件是否有参数可以被加载,从而识别网卡叫eth0;先加载模块,再读取配置文件

    驱动的选择

    当加载模块时,才会尝试读取/etc/modprobe.conf,看其是否与它相应模块的名字,如果有才启动,否则不加载

    1.修改etc/modprobe.conf

     

    eth0:为网卡模块的别名

    via-rhine:模块名字

     当计算机加载模块,它就会尝试做:

    1.加载网卡的模块
    2.读取/etc/modprobe.conf
    3.读取模块的配置信息

    速率和双工模式

    1.默认模块都是自动协商的
    2.不匹配导致网络故障

    内核部件:

    1.多种内核可能同一时间被安装:不同的变种有不同的特性,允许简单的版本升级

    2.内核版本是文件名的一部分

    1.内核版本

    用户空间访问、监控内核的方式:

    /proc, /sys



    伪文件系统

    /proc/sys: 此目录中的文件很多是可读写的
    /sys/: 某些文件可写




    设定内核参数值的方法:

    echo VALUE > /proc/sys/TO/SOMEFILE
    echo 1 >/proc/sys/vm/drop_caches
    sysctl -w kernel.hostname=      //把路径中的"/"改成"."即可,有几个"/"就改几个"."

       
    能立即生效,但无法永久有效;

    永久有效:编辑/etc/sysctl.conf

    修改文件完成之后,执行如下命令可立即生效:

    sysctl -p    
    sysctl -a: 显示所有内核参数及其值

    lsmod 

    列出已加载的所有模块

    modinfo

    查看指定模块的信息

    modprobe

    智能检测及加载模块
         -r     卸载模块

    #########补充

    如何查看IP地址

    ifconfig(ip a)

    QQ20161226-230633@2x.png-76.4kB

    可以通过这两个命令来查看IP地址
    ip地址/24:代表子网掩码255.255.255.0
    lo:回环网卡:用于检测设备自测
    eth0:你的第一块网卡
    eth1:你的第二块网卡

    注意
    假如你发现你的虚拟机没有IP地址的话,那么也许你的网卡设备处于关闭状态
    QQ20161226-232602@2x.png-44.5kB
    通过命令:ifup + 网卡名(ethx) 可以开启设备
    通过命令:ifconfig +网卡名(ethx)+ up 也可以开启设备
    QQ20161226-233622@2x.png-156.2kB

    讨论

    既然这两个命令都能开启成功,那么它们到底有没有区别呢?请跟随我来做个实验。

    第一步:我们删掉eth1网卡的配置文件
    QQ20161226-233915@2x.png-27.6kB

    /etc/sysconfig/network-scripts/:这个路径是网卡配置文件的路径,作为运维人员我们是必须熟记得

    第二步,我们关闭eth1这个网卡设备
    QQ20161226-234211@2x.png-72.8kB

    第三步,我们尝试开启这个设备
    QQ20161226-234407@2x.png-68.2kB

    继续讨论

    为什么我们的试验结果是这样的呢?当我删除了eth1这个网卡的配置文件,ifup这个命令就失灵了?

    这是因为,ifup/ifdown这个命令控制的实际上并不是物理网卡的开启和关闭,而实际上他控制的仅仅是网卡的配置文件而已,它是通过网卡配置文件间接的操作网卡设备。

    而ifconfig xxxx up/down:则是控制物理网卡设备的开启和关闭,因此并不受配置文件的干扰。

    参考:https://www.cnblogs.com/chensiqiqi/p/6224474.html

  • 相关阅读:
    bzoj 3209: 花神的数论题 数位dp
    bzoj 1799: [Ahoi2009]self 同类分布 数位dp
    Codeforces 755 F. PolandBall and Gifts 多重背包+贪心
    Educational Codeforces Round 17 D. Maximum path DP
    Codeforces Round #396 (Div. 2) C. Mahmoud and a Message DP
    Codeforces 768 E. Game of Stones 博弈DP
    HDU 2457/POJ 3691 DNA repair AC自动机+DP
    Codefoces 791D. Bear and Tree Jumps 树形DP
    Codeforces 440 D. Berland Federalization 树形DP,记录DP
    Codeforces 709E. Centroids 树形DP
  • 原文地址:https://www.cnblogs.com/zhongguiyao/p/9179913.html
Copyright © 2020-2023  润新知