zoukankan      html  css  js  c++  java
  • 运维ip语法,DNS配置方法

    修改配置文件:

    /etc/resolv.conf

    nameserver DNS_IP_1

    nameserver DNS_IP_2

    nameserver

    指定本机解析:

    /etc/hosts

    主机IP ------》主机名--------》主机别名

    172.16.0.1         www.magedu.com      www

    DNS-->/etc/hosts--->DNS

    配置主机名:

    hostname     xxxxxxx

    立即生效,但不是永久生效

    配置一下

    /etc/stsconfig/network

    HOSTNAME=www.age.com

    重启网络服务

    !/etc

    /etc/init.d/network restart

    图形化界面-更改网络配置

    setup:system-config-network-tui

    system-config-netwirk-gui

    ifconfig:古老的命令

    iproute2: 新式命令

    ip

      link:配置网络接口属性 【ip link show】

      addr:协议地址

      route:路由

    link:

      show:

          ip -a link show

      set:

          ip link set DEV {up|down}

      addr:

          add

              ip addr add ADDRESS dev DEV

          del

              ip addr del ADDRESS dev DEV

          show

              ip addr show DEV to PREFIX

          flush

              ip addr flush  dev DEV to PREFIX

    一块网卡可以使用多个地址:

    网络设备可以别名:

    eth0

    ethx:x,eth0:0,eth0:1,...

    配置方法:

    ifconfig ethx:x IP/NETWORK

    /etc/sysconfig/network-scripts/ifcfg-ethx:x

    NEVICE=ethx:x

    非主要地址不能使用DHCP动态获取;

    1 查看缺省规则
    ip rule list

    ip route list table local

    ip route list table main

    2 创建test规则路由

    echo 200 test >> /etc/iproute2/rt_tables
    ip rule add from 10.0.0.10 table test
    ip rule ls

    3 为test路由表创建路由项

    ip route add default via 192.68.80.8 dev eth0 table john
    ip route flush cache

    • 如今很多系统管理员依然通过组合使用诸如ifconfig、route、arp和netstat等命令行工具(统称为net-tools)来配置网络功能,解决网络故障。net-tools起源于BSD的TCP/IP工具箱,后来成为老版本Linux内核中配置网络功能的工具。但自2001年起,Linux社区已经对其停止维护。同时,一些Linux发行版比如Arch Linux和CentOS/RHEL 7则已经完全抛弃了net-tools,只支持iproute2。
    • 作为网络配置工具的一份子,iproute2是linux下管理控制TCP/IP网络和流量控制的新一代工具包,旨在替代老派的工具链net-tools,即大家比较熟悉的ifconfig,arp,route,netstat等命令。net-tools通过procfs(/proc)和ioctl系统调用去访问和改变内核网络配置,而iproute2则通过netlink套接字接口与内核通讯。抛开性能而言,net-tools的用法给人的感觉是比较乱,而iproute2的用户接口相对net-tools来说相对来说,更加直观。比如,各种网络资源(如link、IP地址、路由和隧道等)均使用合适的对象抽象去定义,使得用户可使用一致的语法去管理不同的对象。更重要的是,到目前为止,iproute2仍处在持续开发中。
    • 如果你仍在使用net-tools,而且尤其需要跟上新版Linux内核中的最新最重要的网络特性的话,那么是时候转到iproute2的阵营了。原因就在于使用iproute2可以做很多net-tools无法做到的事情。
    • iproute2的核心命令是ip:

    实验环境

    centos7.4

    实验展示

    1. 检查网卡信息
      检查网卡的诸如 IP 地址,子网等网络信息,使用ip addr show命令(简写 ip a s):
    [root@test01 ~]# ip a
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
        link/ether 00:0c:29:9b:7b:dc brd ff:ff:ff:ff:ff:ff
        inet 192.168.1.60/24 brd 192.168.1.255 scope global ens33
           valid_lft forever preferred_lft forever
        inet6 fe80::20c:29ff:fe9b:7bdc/64 scope link 
           valid_lft forever preferred_lft forever
    3: ens37: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
        link/ether 00:0c:29:9b:7b:e6 brd ff:ff:ff:ff:ff:ff
    [root@test01 ~]# ip addr show ens33
    2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
        link/ether 00:0c:29:9b:7b:dc brd ff:ff:ff:ff:ff:ff
        inet 192.168.1.60/24 brd 192.168.1.255 scope global ens33
           valid_lft forever preferred_lft forever
        inet6 fe80::20c:29ff:fe9b:7bdc/64 scope link 
           valid_lft forever preferred_lft forever
    
    1. 启用/禁用网口
      使用ip命令来启用一个被禁用的网口:
    [root@test01 ~]# ip link set ens37 up
    [root@test01 ~]# ip addr show ens37
    3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
        link/ether 00:0c:29:9b:7b:e6 brd ff:ff:ff:ff:ff:ff
        inet6 fe80::20c:29ff:fe9b:7be6/64 scope link 
           valid_lft forever preferred_lft forever
    

    使用ip命令来禁用一个被启用的网口:

    [root@test01 ~]# ip link set ens37 down
    [root@test01 ~]# ip addr show ens37
    3: ens37: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
        link/ether 00:0c:29:9b:7b:e6 brd ff:ff:ff:ff:ff:ff
    
    1. 为网卡分配 IP 地址以及其他网络信息
      要为网卡分配 IP 地址,我们使用下面命令:
    [root@test01 ~]# ip link set ens37 up
    [root@test01 ~]# ip addr add 192.168.0.50/255.255.255.0 dev ens37
    [root@test01 ~]# ip s ens37
    Object "s" is unknown, try "ip help".
    [root@test01 ~]# ip addr show ens37
    3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
        link/ether 00:0c:29:9b:7b:e6 brd ff:ff:ff:ff:ff:ff
        inet 192.168.0.50/24 scope global ens37
           valid_lft forever preferred_lft forever
        inet6 fe80::20c:29ff:fe9b:7be6/64 scope link 
           valid_lft forever preferred_lft forever
    
    1. 删除网卡中配置的 IP 地址
      若想从网卡中删掉某个 IP,使用如下ip命令:
    [root@test01 ~]# ip addr del 192.168.0.50/24 dev ens37
    [root@test01 ~]# ip addr show ens37
    3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
        link/ether 00:0c:29:9b:7b:e6 brd ff:ff:ff:ff:ff:ff
        inet6 fe80::20c:29ff:fe9b:7be6/64 scope link 
           valid_lft forever preferred_lft forever
    
    1. 为网卡添加别名(假设网卡名为 ens37)
      添加别名,即为网卡添加不止一个 IP,执行下面命令
    [root@test01 ~]# ip addr add 192.168.0.50/24 dev ens37
    [root@test01 ~]# ip addr show ens37
    3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
        link/ether 00:0c:29:9b:7b:e6 brd ff:ff:ff:ff:ff:ff
        inet 192.168.0.50/24 scope global ens37
           valid_lft forever preferred_lft forever
        inet6 fe80::20c:29ff:fe9b:7be6/64 scope link 
           valid_lft forever preferred_lft forever
    [root@test01 ~]# ip addr add 192.168.0.20/24 dev ens37 label ens37:1
    [root@test01 ~]# ip addr show ens37
    3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
        link/ether 00:0c:29:9b:7b:e6 brd ff:ff:ff:ff:ff:ff
        inet 192.168.0.50/24 scope global ens37
           valid_lft forever preferred_lft forever
        inet 192.168.0.20/24 scope global secondary ens37:1
           valid_lft forever preferred_lft forever
        inet6 fe80::20c:29ff:fe9b:7be6/64 scope link 
           valid_lft forever preferred_lft forever
    
    1. 检查路由/默认网关的信息
      查看路由信息会给我们显示数据包到达目的地的路由路径。要查看网络路由信息,使用ip route show命令(简写 ip r):
    [root@test01 ~]# ip r
    default via 192.168.1.1 dev ens33 
    169.254.0.0/16 dev ens33 scope link metric 1002 
    192.168.0.0/24 dev ens37 proto kernel scope link src 192.168.0.50 
    192.168.1.0/24 dev ens33 proto kernel scope link src 192.168.1.60
    

    在上面输出结果中,我们能够看到所有网口的ip地址和路由信息

    1. 添加静态路由
      我们也可以使用 IP 来修改数据包的默认路由。方法是使用ip route命令:
    [root@test01 ~]# ip r
    default via 192.168.1.1 dev ens33 
    169.254.0.0/16 dev ens33 scope link metric 1002 
    169.254.0.0/16 dev ens37 scope link metric 1003 
    192.168.0.0/24 dev ens37 proto kernel scope link src 192.168.0.50 
    192.168.1.0/24 dev ens33 proto kernel scope link src 192.168.1.60 
    [root@test01 ~]# ip r
    route  rule   
    [root@test01 ~]# ip route add 192.168.2.0/24 via 192.168.0.1 dev ens37
    [root@test01 ~]# ip r
    default via 192.168.1.1 dev ens33 
    169.254.0.0/16 dev ens33 scope link metric 1002 
    169.254.0.0/16 dev ens37 scope link metric 1003 
    192.168.0.0/24 dev ens37 proto kernel scope link src 192.168.0.50 
    192.168.1.0/24 dev ens33 proto kernel scope link src 192.168.1.60 
    192.168.2.0/24 via 192.168.0.1 dev ens37
    
    1. 删除默认路由
      要删除之前设置的默认路由,打开终端然后运行:
    [root@test01 ~]# ip route del 192.168.2.0/24
    [root@test01 ~]# ip r
    default via 192.168.1.1 dev ens33 
    169.254.0.0/16 dev ens33 scope link metric 1002 
    169.254.0.0/16 dev ens37 scope link metric 1003 
    192.168.0.0/24 dev ens37 proto kernel scope link src 192.168.0.50 
    192.168.1.0/24 dev ens33 proto kernel scope link src 192.168.1.60
    

    用上面方法修改的默认路由只是临时有效的,在系统重启后所有的改动都会丢失。要永久修改路由,需要修改或创建route-ens37文件

    [root@test01 ~]# ip r
    default via 192.168.1.1 dev ens33 
    169.254.0.0/16 dev ens33 scope link metric 1002 
    169.254.0.0/16 dev ens37 scope link metric 1003 
    192.168.0.0/24 dev ens37 proto kernel scope link src 192.168.0.50 
    192.168.1.0/24 dev ens33 proto kernel scope link src 192.168.1.60 
    [root@test01 ~]# cat /etc/sysconfig/network-scripts/route-ens37 
    192.168.2.0/24 via 192.168.0.1 dev ens37
    [root@test01 ~]# systemctl restart network
    [root@test01 ~]# ip r
    default via 192.168.1.1 dev ens33 
    169.254.0.0/16 dev ens33 scope link metric 1002 
    169.254.0.0/16 dev ens37 scope link metric 1003 
    192.168.0.0/24 dev ens37 proto kernel scope link src 192.168.0.50 
    192.168.1.0/24 dev ens33 proto kernel scope link src 192.168.1.60 
    192.168.2.0/24 via 192.168.0.1 dev ens37
    
    1. 检查所有的 ARP 记录
      ARP,是地址解析协议Address Resolution Protocol的缩写,用于将 IP 地址转换为物理地址(也就是 MAC 地址)。所有的 IP 和其对应的 MAC 明细都存储在一张表中,这张表叫做 ARP 缓存。
      要查看 ARP 缓存中的记录,即连接到局域网中设备的 MAC 地址,则使用如下 ip 命令:
    [root@test01 ~]# ip neigh 
    fe80::1 dev ens33 lladdr 9c:e3:74:69:67:19 router STALE
    192.168.1.1 dev ens33 lladdr 9c:e3:74:69:67:19 REACHABLE
    192.168.1.37 dev ens33 lladdr 78:2b:cb:9c:0b:e6 REACHABLE
    
    1. 修改 ARP 记录
      删除 ARP 记录的命令为:
    [root@test01 ~]# ip neigh del 192.168.1.37 dev ens33
    [root@test01 ~]# ip neigh 
    fe80::1 dev ens33 lladdr 9c:e3:74:69:67:19 router STALE
    192.168.1.1 dev ens33 lladdr 9c:e3:74:69:67:19 REACHABLE
    192.168.1.37 dev ens33 lladdr 78:2b:cb:9c:0b:e6 REACHABLE
    
    1. 查看网络统计信息
      通过ip命令还能查看网络的统计信息,比如所有网卡上传输的字节数和报文数,错误或丢弃的报文数等。使用ip -s link命令来查看:
    [root@test01 ~]# ip -s link
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        RX: bytes  packets  errors  dropped overrun mcast   
        594        6        0       0       0       0       
        TX: bytes  packets  errors  dropped carrier collsns 
        594        6        0       0       0       0       
    2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
        link/ether 00:0c:29:9b:7b:dc brd ff:ff:ff:ff:ff:ff
        RX: bytes  packets  errors  dropped overrun mcast   
        79320      816      0       0       0       0       
        TX: bytes  packets  errors  dropped carrier collsns 
        110247     681      0       0       0       0       
    3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
        link/ether 00:0c:29:9b:7b:e6 brd ff:ff:ff:ff:ff:ff
        RX: bytes  packets  errors  dropped overrun mcast   
        13404      209      0       0       0       0       
        TX: bytes  packets  errors  dropped carrier collsns 
        2016       28       0       0       0       0
    
    1. 更改网口名称,可以使用命令ip link set ens37 name eth0。要在网口down的状态下更改
    [root@test01 ~]# ip link set ens37 name eth0
    RTNETLINK answers: Device or resource busy  
    [root@test01 ~]# ip link set ens37 down
    [root@test01 ~]# ip link set ens37 name eth0
    [root@test01 ~]# ip a
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
        link/ether 00:0c:29:9b:7b:dc brd ff:ff:ff:ff:ff:ff
        inet 192.168.1.60/24 brd 192.168.1.255 scope global ens33
           valid_lft forever preferred_lft forever
        inet6 fe80::20c:29ff:fe9b:7bdc/64 scope link 
           valid_lft forever preferred_lft forever
    3: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
        link/ether 00:0c:29:9b:7b:e6 brd ff:ff:ff:ff:ff:ff
        inet 192.168.0.50/24 brd 192.168.0.255 scope global eth0
           valid_lft forever preferred_lft forever
    
    1. 获取帮助
      若你想查看某个上面例子中没有的选项,那么你可以查看帮助。事实上对任何命令你都可以寻求帮助。要列出ip命令的所有可选项,执行ip help:
    [root@test01 ~]# ip help
    Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
           ip [ -force ] -batch filename
    where  OBJECT := { link | address | addrlabel | route | rule | neigh | ntable |
                       tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
                       netns | l2tp | macsec | tcp_metrics | token }
           OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |
                        -h[uman-readable] | -iec |
                        -f[amily] { inet | inet6 | ipx | dnet | bridge | link } |
                        -4 | -6 | -I | -D | -B | -0 |
                        -l[oops] { maximum-addr-flush-attempts } |
                        -o[neline] | -t[imestamp] | -ts[hort] | -b[atch] [filename] |
                        -rc[vbuf] [size] | -n[etns] name | -a[ll] }



  • 相关阅读:
    Hive初识(一)
    图解HTTP总结(8)——确认访问用户身份的认证
    Android 7.0 照相 FileUriExposedException
    activity跳转的一些坑
    gopath配置
    android项目中记录
    一些趣味性总结(JAVA)
    http的response遇到illegalstateexception解决办法
    django demo
    Error:Execution failed for task ':app:transformClassesWithDexForDebug'解决方法
  • 原文地址:https://www.cnblogs.com/duanlinxiao/p/10788959.html
Copyright © 2011-2022 走看看