ifconfig、route、ip route、ip addr、 ip link 用法

网络管理是一个复杂而庞大的体系,博主最近刚好学了一点关于网络的知识,就跟大家分享一下如何管理网卡、配置及查看ip地址和路由表。主要通过以下几个命令来演示一下。

现在一些旧的命令由于功能上有欠缺,已经逐渐被新命令取代。 

旧命令 新命令
ifconfig ip addr
route ip route

ip link
ifconfig、route、ip route、ip addr、 ip link 用法_及路由一、ifconfig

  1)配置地址:

    比如修改eth0网卡的ip为192.168.174.100,子网掩码为255.255.255.0

    ifconfig eth0 192.168.174.100/24  

ifconfig、route、ip route、ip addr、 ip link 用法_ip_02

使用ifconfig修改ip会直接在内存中生效,重启系统或者重启network服务就丢失。

重启服务:Centos6:service network restart

      Centos7:systemctl restart network

ifconfig、route、ip route、ip addr、 ip link 用法_ip_03

2)具有查看功能:

  ①ifconfig

         显示网卡信息,被禁用的网卡看不到.(拔了网线断开连接不算禁用,仍然能看到该网卡)

ifconfig、route、ip route、ip addr、 ip link 用法_ip_04

  ②ifconfig -a  

       不管启用的网卡还是禁用的都能显示出来,但是看不到禁用网卡的ip

ifconfig、route、ip route、ip addr、 ip link 用法_及路由_05

③ip a

     也是查看网卡,但是如果网卡被down,ifconfig -a不显示该ip,也不显示网卡状态,但是ip a可以显示网卡处于down状态

ifconfig、route、ip route、ip addr、 ip link 用法_及路由_06

3)启用、禁用网卡

  ①ifconfig eth1 up   启用eth1网卡

   ifconfig eth1 down  禁用eth1网卡

      这种禁用是从数据链路层断掉,但是网络层ip还在,也就是仍然能ping通

ifconfig、route、ip route、ip addr、 ip link 用法_及路由_07

②ifdown  eth0   禁用网卡,删除了网络层ip   

  ifip  eth0     启用网卡    

ifconfig、route、ip route、ip addr、 ip link 用法_及路由_08

4)扫描eth0接口的数据

             ifconfig -s eth0    

ifconfig、route、ip route、ip addr、 ip link 用法_及路由_09

5)网卡别名

    ifconfig eth1:1 192.168.174.100/24   起网卡别名

    ifconfig eth1:1 192.168.174.100/24   删除别名

ifconfig、route、ip route、ip addr、 ip link 用法_及路由_10

ifconfig、route、ip route、ip addr、 ip link 用法_及路由二、route

1、 查看路由表:

         route -n

ifconfig、route、ip route、ip addr、 ip link 用法_及路由_12

2、添加路由记录:是临时添加的记录,重启network服务就失效

 1)添加到达目标主机的路由

     route add -host 目标主机 gw 网关 dev 接口

比如 给eth0网卡添加一条到达10.1.111.111的路由记录,网关是10.2.111.111

   route add -host 10.1.111.111 gw 10.2.111.111 dev eth0

ifconfig、route、ip route、ip addr、 ip link 用法_ip_13

 2)添加到达目标网络的路由

   route add -net 目标网络 netmask 子网掩码 gw 网关 dev 接口

或者 route add -net 目标网络/子网掩码 gw 网关 dev 接口

比如 给eth0网卡添加一条到达网络10.1.0.0/16的路由,网关是10.2.111.111

  route add -net 10.1.0.0 netmask 255.255.0.0 gw 10.2.111.111 dev eth0  或者  route add -net 10.1.0.0/16 gw 10.2.111.111 dev eth0

ifconfig、route、ip route、ip addr、 ip link 用法_记录_14

  3)添加默认路由

          route add default gw 网关

          比如给eth0添加一条默认路由,网关是10.2.111.111

          route add default gw 10.2.111.111

ifconfig、route、ip route、ip addr、 ip link 用法_记录_15

3、 删除路由记录:

      删除路由记录只需要把添加路由记录命令中的add改成del就可以了,不过删除路由记录可以省略接口

         1)删除到达目标主机的路由记录

         route del -host 主机名

      2)删除到达目标网络的路由记录

         route del -net 目标网络/子网掩码

         3)删除默认路由

         route del default

ifconfig、route、ip route、ip addr、 ip link 用法_及路由三、ip route

  ip route 的用法与route大同小异

   1、显示路由:

            ip route [show | list]

            ip route显示的路由记录与route显示的格式不一样

ifconfig、route、ip route、ip addr、 ip link 用法_ip_17

   2、添加路由

           1)添加到达目标主机的路由记录

              ip route add 目标主机 via 网关

           2)添加到达网络的路由记录

              ip route add 目标网络/掩码 via 网关

           3)添加默认路由

              ip route add default via 网关

  下面只举一个例子说明一下。

  比如增加一条到达主机10.2.111.112的路由,网关是10.1.111.112

           ip route add 10.2.111.112 via 10.1.111.112

ifconfig、route、ip route、ip addr、 ip link 用法_ip_18

   3、删除路由

            ip route del 目标网络/掩码

            ip route del default [via 网关]

   4、清空路由表:

            ip route flush

ifconfig、route、ip route、ip addr、 ip link 用法_及路由四、ip link

   1)查看

        ip link只能看链路层的状态,看不到ip地址

ifconfig、route、ip route、ip addr、 ip link 用法_ip_20

   2)启用、禁用接口

        ip link set device down   禁用指定接口

     ip link set device up    启用指定接口

比如禁用eth0就是ip link set eth0 down

说明:

ip link不支持tab键补齐

在centos6中有的命令不支持tab键补齐,那么使用需要安装bash-completion包,安装完之后,可以查看包里都支持哪些命令补齐,但是发现ip link不包括在内。   

ifconfig、route、ip route、ip addr、 ip link 用法_及路由五、ip addr

   1)查看

     ①ip addr 即ip a ,可以查看网卡的ip、mac等,即使网卡处于down状态,也能显示出网卡状态,但是ifconfig查看就看不到。

ifconfig、route、ip route、ip addr、 ip link 用法_及路由_22

     ②ip addr show device  查看指定网卡的信息

     比如查看eth的信息,就是ip addr show eth0

   2)作用域

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

    ①global: 全局可用,即两个接口进来的数据我都可以响应。是默认状态。

    ②link: 仅链接可用,进来的数据只有直接相连的那个接口能够响应

    ③host: 本机可用,即只能自己访问

ifconfig、route、ip route、ip addr、 ip link 用法_记录_23

 3)增加ip

        ip addr add ip/netmask dev 接口  

     比如给eth0增加一个2.2.2.2/16 地址

   ip addr add 2.2.2.2/16 dev eth0

ifconfig、route、ip route、ip addr、 ip link 用法_ip_24

 4)删除ip

          ip addr del ip/netmask dev 接口   

 5)清空指定网卡的所有ip

          ip addr flush dev 接口        

 6)给网卡起别名,起别名相当于给网卡多绑定了一个ip     

     用法: 比如给网卡eth0增加别名                

          ip addr add 3.3.3.3/16 dev eth0 label eth0:1  

ifconfig、route、ip route、ip addr、 ip link 用法_ip_25

 7)删除别名              

        ip addr del ip/netmask dev eth0 [label eth0:1]  

说明一:

 使用命令的方式设置别名,重启服务就没了,若要永久生效,需要写配置文件,步骤如下:

  1、确保NetworkManager服务是停止的

     Centos6: service NetworkManager status  查看服务状态

           service NetworkManager stop    临时停止

           chkconfig NetworkManager off  下次开机即停止服务  

     Centos7: systemctl status NetworkManager 查看服务状态

           systemctl stop NetworkManager   临时停止

           systemctl disable NetworkManager 下次开机即停止服务

  2、 编辑配置文件

     cd /etc/sysconfig/network-scripts/

          vim ifcfg-eth1:1  至少写入以下内容

              DEVICE=eth1:1

              BOOTPROTO=static

              IPADDR=           ==》ip地址

              PREFIX=           ==》掩码

              GATEWAY=              ==》网关

          设置别名时必须是静态ip,不能是自动获取

  3、 重启服务

     Centos6:  service network restart

     Centos7:  systemctl restart network

  如果不想要这个别名了,直接删除该文件,然后重启服务即可 。      

说明二:

   使用命令的方式增加或者删除ip,都是临时的,如果重启network服务,那么操作就失效了。想要永久生效可以修改配置文件/etc/sysconfig/network-scripts/ifcfg-eth*,这个文件是用来设置网卡参数,这个文件内的所有设置,基本上就是bash的变量设置规则(都应该要大写),否则我们的scropt会误判。

步骤如下:

    1) 编辑文件

 vim /etc/sysconfig/network-scripts/ifcfg-eth0  至少要有如下几项:

             DEVICE=eth0

             BOOTPROTO=static

             IPADDR=           ==》ip地址

             PREFIX=           ==》掩码

             GATEWAY=              ==》网关

    2)生效:重启服务

       Centos6:  service network restart

       Centos7:  systemctl restart network

说明三:

 使用命令的方式增加或者删除路由记录,都是临时的,如果重启network服务,那么操作就失效了。想要永久生效可以编辑配置文件/etc/sysconfig/network-scripts/route-eth*,步骤如下:   

     1、 vim etc/sysconfig/network-scripts/route-eth0 

            文件内容有两种写法:

          1)单行

            netid/mask via gw  比如2.2.2.2/16 via 10.0.0.0

          2)多行

            ADDRESS#=目标网络

            NETMASK#=子网掩码

            GATEWAY#=网关

注意:

同一路由记录的#数字必须一样,因为可能会添加多条路由,数字一样的为同一组。

同一个文件里,两种格式不能混合着写。

      2、重启服务

             Centos6:  service network restart

             Centos7:  systemctl restart network    

以上就是一些关于增加或者删除ip及路由记录的小命令,临时起作用的命令一般用在测试环境中,想要永久生效就需要写在文件里。希望这篇博文能对大家有所帮助,欢迎留言,共同探讨。

转自:https://blog.51cto.com/u_13150617/1963833

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Linux中,可以使用ip命令来管理网卡和配置IP地址。要查看所有网卡及其配置,可以使用命令`ip a`。要删除指定网卡的当前IP配置,可以使用命令`ip addr del`,例如`ip addr del 192.168.23.1/24 broadcast 192.168.23.255 dev eth0`。要在指定网卡上添加IP地址,可以使用命令`ip addr add`,例如`ip addr add 192.168.23.13/24 broadcast 192.168.23.255 dev eth0`。如果只想添加IP地址而不填充子网掩码和广播地址,可以使用命令`ip addr add 192.168.23.13 dev eth0`。要查看路由表,包括默认路由,可以使用命令`ip route`。要删除默认路由,可以使用命令`ip route delete default`。要设置默认路由的网关,可以使用命令`ip route add default via 192.168.23.254 dev eth0`。如果报错,可以尝试添加`onlink`,例如`ip route add default via 192.168.23.254 dev eth0 onlink`。 另外,还可以使用ifconfig命令来删除和新建网络配置。例如,要删除并新建网卡eth0的网络配置,可以使用命令`ifconfig eth0 192.168.23.130 netmask 255.255.255.0 broadcast 192.168.23.255`。如果只想简单地修改IP地址,可以使用命令`ifconfig eth0 192.168.23.130`。要查看指定网卡的配置,可以使用命令`ifconfig eth0`。 关于DNS配置,可以使用systemd-resolved服务来管理。要查看当前DNS配置,可以使用命令`systemd-resolve --status | grep 'DNS Servers' -A2`。要编辑DNS配置文件,可以使用命令`vim /etc/systemd/resolved.conf`,在文件中添加DNS服务器地址。为了锁定DNS配置文件,可以使用命令`chattr +i /etc/systemd/resolved.conf`。最后,重启systemd-resolved服务以使配置生效,可以使用命令`systemctl restart systemd-resolved`。 在Ubuntu 18.04下,如果使用ip命令报错"RTNETLINK answers: no such process",可以执行命令`systemctl status networking`来解决。此外,还可以在`/etc/network/interfaces`文件中配置相应的网卡。 综上所述,要在Linux中管理网卡、配置网口和IP地址,可以使用ip命令和ifconfig命令,并且可以使用systemd-resolved服务来管理DNS配置。 #### 引用[.reference_title] - *1* *2* *3* [Linux 修改网卡ip的两种方式](https://blog.csdn.net/weixin_40277264/article/details/128846057)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值