首页 > 代码库 > 网络管理

网络管理

  • ifconfig 输出当前系统中所有处于活动状态的网络接口

    技术分享?

    • link encap:Ethernet 表示封装方式为以太网
    • HWaddr 表示网卡的硬件MAC地址
    • inet addr 网卡当前的IP地址
    • Bcast 是广播地址(通过IP地址和掩码计算出来的)
    • Mask 掩码
    • inet6 addr 表示IPV6地址
    • UP 表示该网卡目前处于活动状态
    • MTU 表示最大存储单元,即此网卡一次所能传输的最大分包
    • RX 表示接收的包
    • TX 表示发送的包
    • collision 表示冲突数,如果值不为0,则很可能出现了网络故障
    • txqueuelen 表示传输缓冲区长度大小
  • 手动指定eth1的IP地址

    ifconfig eth1 192.168.31.119 netmask 255.255.255.0
    

    通过IP地址和掩码可以算出广播地址,也可以显示的设置广播地址

    ifconfig eth1 192.168.31.119 broadcast 192.168.31.255 netmask 255.255.255.0
    
  • 手动开启/断开网卡

    ifconfig eth1 down
    ifdown eth1
    ifconfig eth1 up
    ifup eth1
    
  • 上面的配置方式只能保存在当前内核中,一旦机器重启这些信息将会丢失,RedHat和CentOS系统的网络配置文件为/etc/sysconfig/network-scripts目录下的ifcfg-eth*文件
    技术分享?
    eth0的配置文件为ifcfg-eth0,如果有第二块物理网卡则其配置文件为ifcfg-eth1,依次类推。

  • 查看ifcfg-eth0 配置文件
    技术分享?

    • DEVICE 变量定义了设备的名称
    • DWADDR 变量定义了MAC物理地址
    • BOOTPROTO 变量定义了获取IP的方法,这里BOOTPROTO=static 表示系统在启用这块网卡时静态设置的IP地址,如果设置为dhcp的话,表示IP地址将会以dhcp方式获得。
    • ONBOOT 变量定义了启动时是否激活使用该设备,yes表示是,no表示否

    修改完配置文件后,如果想立即生效的话,有两种方式:

    • 先将端口停用,然后再启动
    ifconfig eth0 down
    ifconfig eth1 up
    
    • 重启网络服务
    service network restart
    
  • 添加/删除默认网关: 一般来说路由是IT设备的基础设施,每一个网段都应该至少有一个网关,在Linux中可以使用route命令添加默认网关

    route add default gw 192.168.31.1
    route del default gw 192.168.31.1
    

    同样的,如果只使用route命令添加网关,一旦系统重启,配置信息就不存在了,必须将这种配置信息写到相关的配置文件中才可以保存,可以在网卡配置信息中使用GATEWAY 变量来定义网关。也可以在/etc/sysconfig/network文件中配置
    技术分享?

  • 添加默认网关之后就可以查看系统当前的路由表
    技术分享?

  • hosts文件 /etc/hosts 即为host文件,host文件的作用:

    • 加快域名解析,当访问网站时,系统会首先查看hosts文件中是否有记录,如果记录存在则直接解析出对应的IP,此时不需要请求DNS服务器

    • 方便小型局域网用户使用内部设备:由于局域网太小而不必专门设置DNS服务器

  • 网络测试工具ping

    ping 192.168.31.182 -c 3 //只发3次包
    

    技术分享?

  • host 命令用来查询DNS记录,如果使用域名作为host的参数则返回该域名的IP地址
    技术分享?
    以上命令还可以有第二个参数,该参数必须是一个可用的DNS服务器,也就是说使用指定DNS服务器查询域名,而不是使用/ect/resolv.conf文件中定义的DNS查询
    技术分享?
    技术分享?

  • 从技术上来讲DNS就是互联网上所有主机和IP地址映射的数据库,设置主机为DNS客户端的的配置文件是/etc/resolv.conf 其中包含nameserver,search,domain 这3个关键字

    • nameserver 紧跟DNS服务器的IP地址,可以设置2~3个nameserver,但是主机查询域名时会首先查询第一个DNS,当该DNS不可用时,才会去查询第二个DNS

    • 虽然在文件中可以定义多于3个的nameserver,但是并没有意义,因为系统永远不会用到第四个nameserver「张军测试得到结果」

    • search 后面跟一个域名,每个主机严格来说都应该有一个FQDN(全局限定名),所以往往域名就会很长,例如写成search google.com 那么www就代表www.google.com ,这个关键字后面可以跟多个域名

    • domain 关键字和search关键字一样,不同的是domain 后面只能跟一个域名

常见网络故障诊断

  1. 确认网卡本身是否出现故障

    ping 127.0.0.1
    

    127.0.0.1 被称为主机回环接口,这个包不会发送到网络上,用来测试本机TCP/IP 协议簇是否正确安装。可以这样理解 这个数据包从shell发到了kernel的tcp/ip模块,然后从tcp/ip模块返回到shell,就看到ping成功了。也表示本机tcp/ip配置没问题

  2. 确认网卡是否出现物理或者驱动故障

    ping 本地ip地址
    

    确认网卡是否正确安装,ping 本机ip地址 这个数据包发送到网络上了(一般指局域网), 所有机器都收到了这个数据包(也包括自己的机器)然后自己的机器回应这个数据包 回映了就看到shell下ping成功了 这也表示这个ip地址是正确的 是被其他机器承认的ip

  3. 确认是否能ping通同网段的其他主机,主要是用来确认二层网络设备(交换机或者HUB)工作是否正常。如果ping 不通可能是交换机的端口工作模式,vlan划分有问题

    ping 同网段的其他主机
    
  4. 确认是否能ping 通网关IP

    ping 网关IP
    

    如果能ping通网关,说明主机和本地网络都工作正常

  5. 确认是否能ping 通公网上的IP

    ping 公网上的IP
    

    如果能ping通说明,说明本地的路由设置正确,否则确认路由设备是否做了正确的nat或路由设置

  6. 确认是否能ping 通公网上的某个域名

    ping 公网上的的某个域名
    

    如果能ping通说明,说明DNS设置正确

网络管理