【Linux】ip命令详解

打印 上一主题 下一主题

主题 511|帖子 511|积分 1533


Linux网络排查

目录
一、ip命令介绍
1.1 ip命令简介
1.2 ip命令的由来
二、ip命令使用帮助
2.1 ip命令的help帮助信息
2.2 ip命令对象介绍
2.3 ip命令选项介绍
三、查看网络信息
3.1 显示当前网络接口信息
3.2 显示网络设备运行状态
3.3 显示具体设备信息
3.4 查看路由表
3.5 查看ARP缓存
3.6 正则匹配截取信息
四、设置网卡IP地点
4.1 启用或停止网卡
4.2 新增网卡地点
4.3 设置默认网关
4.4 删除新增网卡的IP地点
4.5 删除默认网关
五、管理路由表
5.1 新增路由表
5.2 删除路由表条目
5.3 永世设置静态路由方法
六、ip命令总结

一、ip命令介绍


1.1 ip命令简介

IP命令是一个非常强大的命令行工具,用于管理与配置网络接口和路由表。

1.2 ip命令的由来

   IP命令的由来可以追溯到Unix操作系统,IP命令是一个网络工具,用于配置和管理网络接口和路由表。它是从早期的Unix系统中的ifconfig命令发展而来的。ifconfig命令可以用于配置和管理网络接口,但是它的功能有限,不能管理路由表,因此IP命令应运而生。随着网络技能的不断发展,IP命令也不断进行更新和扩展,成为了一个功能强大的网络工具。现在,在许多Linux和Unix系统中,IP命令已经代替了ifconfig命令,成为管理网络接口和路由表的主要工具。
  

二、ip命令使用帮助


2.1 ip命令的help帮助信息



2.2 ip命令对象介绍


  1. where  OBJECT := { link | address | addrlabel | route | rule | neigh | ntable |
  2.                    tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
  3.                    netns | l2tp | fou | macsec | tcp_metrics | token | netconf | ila |
  4.                    vrf }
复制代码
对象参数释义:
对象
释义
link
网络设备
address
设备的协议地点(IP或IPv6)
addrlabel
用于协议地点选择的标签配置
route
路由表项
rule
路由策略数据库中的规则
neighbour
管理ARP或NDISC缓存项
ntable
管理邻居cache的操作
tunnel
IP隧道
tuntap
管理TUN/TAP设备
maddress
多播地点
mroute
组播路由缓存项
mrule
组播路由策略数据库中的规则
monitor
监控netlink消息
xfrm
管理IPSec策略
l2tp
隧道以太网over IP (L2TPv3)

2.3 ip命令选项介绍


  1.        OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |
  2.                     -h[uman-readable] | -iec |
  3.                     -f[amily] { inet | inet6 | ipx | dnet | mpls | bridge | link } |
  4.                     -4 | -6 | -I | -D | -B | -0 |
  5.                     -l[oops] { maximum-addr-flush-attempts } | -br[ief] |
  6.                     -o[neline] | -t[imestamp] | -ts[hort] | -b[atch] [filename] |
  7.                     -rc[vbuf] [size] | -n[etns] name | -a[ll] | -c[olor]}
  8. -V:显示指令版本信息;
  9. -s:输出更详细的信息;
  10. d: 输出更详细的信息
  11. -r:使用系统的名称解析器来打印DNS名称而不是主机地址
  12. -h:输出带有人类可读值的统计信息,后面跟着后缀
  13. -f:强制使用指定的协议族;
  14. -4:指定使用的网络层协议是IPv4协议;
  15. -6:指定使用的网络层协议是IPv6协议;
  16. -0:输出信息每条记录输出一行,即使内容较多也不换行显示;
  17. -l: 指定“ip地址刷新”逻辑在放弃之前尝试的最大循环次数。默认值是10。零(0)表示循环,直到移除所有地址
  18. -b: 从提供的文件或标准输入中读取命令并调用它们。第一次失败将导致ip终止
  19. -o: 在单行上输出每个记录,用'\'字符替换换行。这在你需要的时候很方便以wc(1)或grep(1)计数输出记录
  20. -rc: 设置netlink套接字接收缓冲区大小,默认为1MB
  21. -n: 将ip切换到指定的网络命名空间NETNS
复制代码


三、查看网络信息


3.1 显示当前网络接口信息


  1. ip addr show
  2. #简写
  3. ip a
复制代码

3.2 显示网络设备运行状态


  1. 使用以下命令,显示网络设备运行状态。
  2. ip link list
复制代码

3.3 显示具体设备信息


  1. ip -stats  link  list
  2. # 简写
  3. ip -s  l  l
复制代码

3.4 查看路由表


  1. ip route show
  2. ip route list
复制代码

3.5 查看ARP缓存


  1. ip neighbour show
  2. ip neighbour list
复制代码


3.5 正则匹配截取信息


  1. # 获取主机所有网络接口
  2. ip link | grep -E '^[0-9]' | awk -F: '{print $2}'
  3. # 提取本地IP地址
  4. ip addr show | grep 'inet ' | awk '{print $2}' | awk -F/ '{print $1}'
复制代码


四、设置网卡IP地点


4.1 启用或停止网卡


使用以下命令,启用或停止网卡。
  1. ip link set <interface> up/down
复制代码

4.2 新增网卡地点


使用以下命令,给ens192网卡,新增ip地点。
  1. ip link add link ens192 br0 type vlan id 2
复制代码


  • "ip link add link":添加一个新的网络接口;
  • "ens192":指定要添加网络接口的物理接口;
  • "br0":新添加的网络接口名称;
  • "type vlan":指定创建一个VLAN类型的网络接口;
  • "id 2":VLAN ID为 2;

接下来,我们可以配置新添加的网络接口,可以为该接口指定IP地点、子网掩码等等。
  1. ip addr add 192.168.2.19/24  broadcast 192.168.2.255 dev br0
  2. ip addr del 192.168.2.19/24  broadcast 192.168.2.255 dev br0
复制代码


  • "ip addr add":为指定设备添加IP地点
  • "192.168.2.99/24":指定IP地点和
  • "dev br0":指定为哪个网络接口添加IP地点

   ip link 是 Linux 系统中的一个命令,用于显示或操纵网络接口的链路层属性。链路层也被称为第二层,在这个层级上,数据被封装成帧(frame)进行发送和吸取。
  根本用法:ip link 的根本用法可以分为两类,查看和设置。
  查看网络接口信息:你可以直接输入 ip link 或者 ip link show 来查看系统中全部网络接口的链路层信息。
  设置网络接口属性:ip link set 命令可以用于更改网络接口的链路层属性,如改变接口状态(up/down)、改变接口的 MTU 值等。
  应用场景:
  当你需要查看系统中的网络接口信息,如接口名称、接口状态(UP 或 DOWN)、MTU(Maximum Transmission Unit,最大传输单元)值,MAC 地点等信息时,可以使用 ip link 命令。
  当你需要更改网络接口的链路层属性,如开启或关闭一个网络接口(up/down)、改变接口的 MTU 值、改变接口的 MAC 地点等,也可以使用 ip link 命令。
  你也可以使用 ip link 命令来创建或删除虚拟网络接口,如虚拟网桥、虚拟以太网设备(veth)、虚拟隧道等。
  因为它涉及到底层的网络设置,以是在使用时需要审慎,特殊是在生产环境中。当你对某个设定不确定时,最好先在测试环境中试验,确认无误后再应用到生产环境中。
  
4.3 设置默认网关


使用以下命令设置默认网卡地点,<gateway_ip>为网关地点,为网络接口。
  1. ip route add default via <gateway_ip> dev <interface>
  2. # 删除
  3. ip route del default via <gateway_ip> dev <interface>
复制代码


4.4 删除新增网卡的IP地点


使用以下命令,删除新增网卡IP地点。
  1. ip addr del 192.168.2.19/24  broadcast 192.168.2.255 dev br0
复制代码

4.5 删除默认网关


使用以下命令,删除默认网关。
  1. ip route del default
复制代码

五、管理路由表


5.1 新增路由表

使用以下命令,新增路由表。
  1. ip route add 192.168.80.0/24 via 192.168.2.254  dev br0
复制代码
查看路由表信息:


5.2 删除路由表条目


使用以下命令,删除路由表条目。
  1. ip route del 192.168.80.0/24 via 192.168.2.254  dev br0
复制代码

5.3 永世设置静态路由方法


进入网卡目录中,在网卡配置文件中,新建及编辑文件 route-ens192
  1. cd /etc/sysconfig/network-scripts/
  2. vim route-eth0
  3. 172.16.10.0/24 via 192.168.3.254
复制代码
重启network服务
  1. service network restart
复制代码
查看路由表
  1. ip route
复制代码

六、ip命令总结


  1. 1. ip命令是Linux下管理网络接口的主要工具之一,可以用于设置IP地址、路由表、网络接口等。
  2. 2. ip命令的常见操作包括查看网络接口信息、设置IP地址、设置网络接口等。
  3. 3. 查看网络接口信息的操作:
  4.     - ip addr:显示所有网络接口的详细信息,包括接口名称、MAC地址、IPv4地址、IPv6地址等。
  5.     - ip link:显示所有网络接口的名称和状态信息。
  6. 4. 设置IP地址的操作:
  7.     - ip addr add IP地址/掩码 dev 网络接口名:给指定网络接口添加IP地址。
  8.     - ip addr del IP地址/掩码 dev 网络接口名:删除指定网络接口的IP地址。
  9.     - ip -4 addr add IP地址/掩码 dev 网络接口名:给指定网络接口添加IPv4地址。
  10.     - ip -6 addr add IPv6地址/掩码 dev 网络接口名:给指定网络接口添加IPv6地址。
  11. 5. 设置网络接口的操作:
  12.     - ip link set 网络接口名 up/down:设置指定网络接口的状态为up或down。
  13.     - ip link set 网络接口名 name 新名称:给指定网络接口修改名称。
  14.     - ip link set 网络接口名 mtu MTU值:设置指定网络接口的最大传输单元大小。
  15.     - ip route add 目标地址/掩码 via 网关 dev 网络接口名:添加路由规则,指定目标地址走指定的网关。
  16. 6. 其他常用操作:
  17.     - ip neigh:显示ARP缓存表。
  18.     - ip route:显示和管理路由表。
  19.     - ip rule:显示和管理路由策略。
复制代码
参考:
原文链接:Linux系统之ip命令的根本使用_linux ip-CSDN博客

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

张国伟

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表