Linux系统之ip命令的基本使用

Linux系统之ip命令的基本使用

  • 一、ip命令介绍
    • 1.1 ip命令简介
    • 1.2 ip命令的由来
    • 1.3 ip命令的安装包
  • 二、ip命令使用帮助
    • 2.1 ip命令的help帮助信息
    • 2.2 ip命令使用帮助
  • 三、查看网络信息
    • 3.1 显示当前网络接口信息
    • 3.2 显示网络设备运行状态
    • 3.3 显示详细设备信息
    • 3.4 查看路由表
    • 3.5 查看ARP缓存
    • 3.6 获取主机所有网络接口
    • 3.7 提取本地IP地址
  • 四、设置网卡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命令,成为管理网络接口和路由表的主要工具。

1.3 ip命令的安装包

ip 命令来自 iproute2 软件包,在 CentOS 7 中默认已安装(yum install -y iproute)。

[root@jeven ~]# rpm -ql iproute |grep bin
/usr/sbin/arpd
/usr/sbin/bridge
/usr/sbin/cbq
/usr/sbin/ctstat
/usr/sbin/devlink
/usr/sbin/genl
/usr/sbin/ifcfg
/usr/sbin/ifstat
/usr/sbin/ip
/usr/sbin/lnstat
/usr/sbin/nstat
/usr/sbin/routef
/usr/sbin/routel
/usr/sbin/rtacct
/usr/sbin/rtmon
/usr/sbin/rtpr
/usr/sbin/rtstat
/usr/sbin/ss
/usr/sbin/tc

二、ip命令使用帮助

2.1 ip命令的help帮助信息

[root@jeven ~]# 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 | fou | macsec | tcp_metrics | token | netconf | ila |vrf }OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |-h[uman-readable] | -iec |-f[amily] { inet | inet6 | ipx | dnet | mpls | bridge | link } |-4 | -6 | -I | -D | -B | -0 |-l[oops] { maximum-addr-flush-attempts } | -br[ief] |-o[neline] | -t[imestamp] | -ts[hort] | -b[atch] [filename] |-rc[vbuf] [size] | -n[etns] name | -a[ll] | -c[olor]}

2.2 ip命令使用帮助

  • ip命令语法
ip(选项)(对象)
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }ip [ -force ] -batch filename
  • ip命令对象介绍
OBJECT := { link | address | addrlabel | route | rule | neigh | ntable |tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |netns | l2tp | macsec | tcp_metrics | token }-V:显示指令版本信息;
-s:输出更详细的信息;
-f:强制使用指定的协议族;
-4:指定使用的网络层协议是IPv4协议;
-6:指定使用的网络层协议是IPv6协议;
-0:输出信息每条记录输出一行,即使内容较多也不换行显示;
-r:显示主机时,不使用IP地址,而使用主机的域名。
  • ip命令选项介绍
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] }网络对象:指定要管理的网络对象;
具体操作:对指定的网络对象完成具体操作;
help:显示网络对象支持的操作命令的帮助信息。

三、查看网络信息

3.1 显示当前网络接口信息

显示当前网络接口信息

[root@master ~]# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope hostvalid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 3e:85:b4:65:29:5a brd ff:ff:ff:ff:ff:ffinet 192.168.3.141/24 brd 192.168.3.255 scope global noprefixroute eth0valid_lft forever preferred_lft foreverinet6 fd58:bc95:d4fb::6bd/128 scope global noprefixroute dynamicvalid_lft 41513sec preferred_lft 41513secinet6 fd58:bc95:d4fb:0:639d:3714:f9ef:bcf9/64 scope global noprefixroutevalid_lft forever preferred_lft foreverinet6 fe80::8c51:e8b9:1007:68ae/64 scope link noprefixroutevalid_lft forever preferred_lft forever

3.2 显示网络设备运行状态

使用以下命令,显示网络设备运行状态。

[root@master ~]# ip link list
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000link/ether 3e:85:b4:65:29:5a brd ff:ff:ff:ff:ff:ff

3.3 显示详细设备信息

使用以下命令,显示网卡的详细信息。

[root@master ~]#  ip -s link list
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00RX: bytes  packets  errors  dropped overrun mcast592        8        0       0       0       0TX: bytes  packets  errors  dropped carrier collsns592        8        0       0       0       0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000link/ether 3e:85:b4:65:29:5a brd ff:ff:ff:ff:ff:ffRX: bytes  packets  errors  dropped overrun mcast129963605  1427572  0       19748   0       0TX: bytes  packets  errors  dropped carrier collsns78253987   319575   0       0       0       0

3.4 查看路由表

  • 显示核心路由表
[root@master ~]# ip route list
default via 192.168.3.254 dev eth0 proto static metric 100
192.168.3.0/24 dev eth0 proto kernel scope link src 192.168.3.141 metric 100
  • 查看当前路由表信息
[root@master ~]# ip route show
default via 192.168.3.254 dev eth0 proto static metric 100
192.168.3.0/24 dev eth0 proto kernel scope link src 192.168.3.141 metric 100

3.5 查看ARP缓存

查看ARP缓存

[root@master ~]# ip neighbour show
192.168.3.190 dev eth0 lladdr d2:a0:fc:9d:f1:db STALE
192.168.3.174 dev eth0 lladdr 9a:1f:bc:b6:cf:20 STALE
192.168.3.168 dev eth0 lladdr 50:2b:73:dc:5d:d5 REACHABLE
192.168.3.143 dev eth0 lladdr d6:6c:02:9b:8e:a3 REACHABLE
192.168.3.238 dev eth0 lladdr 8c:7a:3d:64:ea:50 STALE
192.168.3.254 dev eth0 lladdr 7c:10:c9:db:21:58 REACHABLE
192.168.3.142 dev eth0 lladdr ae:5a:c7:0c:8c:1a REACHABLE
fe80::981f:bcff:feb6:cf20 dev eth0 lladdr 9a:1f:bc:b6:cf:20 STALE
fe80::a067:28ff:feff:a86f dev eth0 lladdr a2:67:28:ff:a8:6f router STALE
[root@master ~]# ip neighbour list
192.168.3.190 dev eth0 lladdr d2:a0:fc:9d:f1:db STALE
192.168.3.174 dev eth0 lladdr 9a:1f:bc:b6:cf:20 STALE
192.168.3.168 dev eth0 lladdr 50:2b:73:dc:5d:d5 REACHABLE
192.168.3.143 dev eth0 lladdr d6:6c:02:9b:8e:a3 REACHABLE
192.168.3.238 dev eth0 lladdr 8c:7a:3d:64:ea:50 STALE
192.168.3.254 dev eth0 lladdr 7c:10:c9:db:21:58 STALE
192.168.3.142 dev eth0 lladdr ae:5a:c7:0c:8c:1a REACHABLE
fe80::981f:bcff:feb6:cf20 dev eth0 lladdr 9a:1f:bc:b6:cf:20 STALE
fe80::a067:28ff:feff:a86f dev eth0 lladdr a2:67:28:ff:a8:6f router STALE

3.6 获取主机所有网络接口

使用以下命令,获取主机所有网络接口。

[root@master ~]# ip link | grep -E '^[0-9]' | awk -F: '{print $2}'loeth0

3.7 提取本地IP地址

使用ip命令,提取本地网卡IP地址。

[root@master ~]# ip addr show | grep 'inet ' | awk '{print $2}' | awk -F/ '{print $1}'
127.0.0.1
192.168.3.141

四、设置网卡IP地址

4.1 启用或停止网卡

使用以下命令,启用或停止网卡。

ip link set <interface> up/down

4.2 设置默认网关

使用以下命令设置默认网卡地址,<gateway_ip>为网关地址,为网络接口。

ip route add default via <gateway_ip> dev <interface>

4.3 新增网卡地址

使用以下命令,给eth0网卡,新增ip地址。

 ip addr add 192.168.1.100/24 dev eth0

查看新增的IP地址,注意新增的IP地址是临时生效,要长久生效,修改网卡配置文件或者使用nmcli命令。

ip add show

在这里插入图片描述

4.4 删除新增网卡的IP地址

使用以下命令,删除新增网卡IP地址。

ip addr del 192.168.1.100/24 dev eth0

4.5 删除默认网关

使用以下命令,删除默认网关。

 ip route del default

五、管理路由表

5.1 新增路由表

使用以下命令,新增路由表。

ip route add 192.168.80.0/24 via 192.168.1.1

查看路由表信息。

[root@master ~]# ip route show
default via 192.168.3.254 dev eth0 proto static metric 100
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100
192.168.3.0/24 dev eth0 proto kernel scope link src 192.168.3.141 metric 100
192.168.80.0/24 via 192.168.1.1 dev eth0

5.2 删除路由表条目

使用以下命令,删除路由表条目。

 ip route del 192.168.80.0/24 via 192.168.1.1

检查路由表中,该条目是否已删除。

[root@master ~]# ip route show
default via 192.168.3.254 dev eth0 proto static metric 100
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100
192.168.3.0/24 dev eth0 proto kernel scope link src 192.168.3.141 metric 100

5.3 永久设置静态路由方法

进入网卡目录中

 cd /etc/sysconfig/network-scripts/

在网卡配置文件中,新建及编辑文件 route-eth0,内容如下:

[root@server01 network-scripts]# vim route-eth0
[root@server01 network-scripts]# cat route-eth0 
172.16.10.0/24 via 192.168.3.254

重启network服务

service network restart 

查看路由表

[root@master network-scripts]# ip route
default via 192.168.3.254 dev eth0 proto static metric 100
172.16.10.0/24 via 192.168.3.254 dev eth0 proto static metric 100
192.168.3.0/24 dev eth0 proto kernel scope link src 192.168.3.141 metric 100

六、ip命令总结

以下是对ip命令使用的总结:

1. ip命令是Linux下管理网络接口的主要工具之一,可以用于设置IP地址、路由表、网络接口等。2. ip命令的常见操作包括查看网络接口信息、设置IP地址、设置网络接口等。3. 查看网络接口信息的操作:
- ip addr:显示所有网络接口的详细信息,包括接口名称、MAC地址、IPv4地址、IPv6地址等。
- ip link:显示所有网络接口的名称和状态信息。4. 设置IP地址的操作:
- ip addr add IP地址/掩码 dev 网络接口名:给指定网络接口添加IP地址。
- ip addr del IP地址/掩码 dev 网络接口名:删除指定网络接口的IP地址。
- ip -4 addr add IP地址/掩码 dev 网络接口名:给指定网络接口添加IPv4地址。
- ip -6 addr add IPv6地址/掩码 dev 网络接口名:给指定网络接口添加IPv6地址。5. 设置网络接口的操作:
- ip link set 网络接口名 up/down:设置指定网络接口的状态为up或down。
- ip link set 网络接口名 name 新名称:给指定网络接口修改名称。
- ip link set 网络接口名 mtu MTU值:设置指定网络接口的最大传输单元大小。
- ip route add 目标地址/掩码 via 网关 dev 网络接口名:添加路由规则,指定目标地址走指定的网关。6. 其他常用操作:
- ip neigh:显示ARP缓存表。
- ip route:显示和管理路由表。
- ip rule:显示和管理路由策略。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/102052.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android - AsyncTask

一、概念 是一个抽象泛型类&#xff0c;由 Android 封装的一个轻量级异步类&#xff0c;它可以在线程池中执行后台任务&#xff0c;然后把执行的进度和最终结果传递给主线程并在主线程中更新UI。 内部封装了两个线程池&#xff08;SerialExecutor、THREAD_POOL_EXECUTOR&#x…

Elasticsearch 分片内部原理—近实时搜索、持久化变更

目录 一、近实时搜索 refresh API 二、持久化变更 flush API 一、近实时搜索 随着按段&#xff08;per-segment&#xff09;搜索的发展&#xff0c;一个新的文档从索引到可被搜索的延迟显著降低了。新文档在几分钟之内即可被检索&#xff0c;但这样还是不够快。 磁盘在这…

2023年中国车用磁传感器市场发展趋势分析:未来市场规模将保持较高速增长趋势[图]

磁传感器是把磁场、电流、应力应变、温度、光等外界因素引起敏感元件磁性能变化转换成电信号&#xff0c;以这种方式来检测相应物理量的器件。磁传感器广泛用于现代工业和电子产品中以感应磁场强度来测量电流、位置、方向等物理参数。在现有技术中&#xff0c;有许多不同类型的…

WIN10如何搭建自己的博客

引言&#xff1a; 路线说明&#xff1a; 在CSDN&#xff0c;博客园&#xff0c;简书等平台&#xff0c;可以直接在上面发表&#xff0c;用户交互做的好&#xff0c;写的文章百度也能搜索的到&#xff0c;这样速度也是最快的&#xff0c;不费心运营啥的。缺点是比较不自由&…

nginx配置netty

一、安装支持stream的nginx版本&#xff1a; 1、首先&#xff0c;先下载nginx的rpm包&#xff0c;下载地址&#xff1a;http://nginx.org/packages/centos/7/x86_64/RPMS/ 下载 nginx-1.20.1-1.el7.ngx.x86_64.rpm2、执行安装命令&#xff1a; 然后&#xff0c;将下载好的rp…

opencv读取摄像头并读取时间戳

下面这行代码是获取摄像头每帧的时间戳&#xff1a; double timestamp cap.get(cv::CAP_PROP_POS_MSEC); 改变帧率的方法是&#xff1a; cap.set(cv::CAP_PROP_FPS, 30); //帧率改为30 但是实际测试时发现帧率并未被改变&#xff0c;这个可能和VideoCapture cap(cv::CAP_V…

clustershell

https://clustershell.readthedocs.io/en/latest/tools/index.html clush nodeset clustershell安装 yum --enablerepoextras install epel-release yum install clustershell python2-clustershellClusterShell的Python 3子软件包(非必须) yum install python34-clustersh…

Flink 中kafka broker缩容导致Task一直重启

背景 Flink版本 1.12.2 Kafka 客户端 2.4.1 在公司的Flink平台运行了一个读Kafka计算DAU的流程序&#xff0c;由于公司Kafka的缩容&#xff0c;直接导致了该程序一直在重启&#xff0c;重启了一个小时都还没恢复&#xff08;具体的所容操作是下掉了四台kafka broker&#xff0…

LuatOS-SOC接口文档(air780E)-- ftp - ftp 客户端

ftp.login(adapter,ip_addr,port,username,password)# FTP客户端 参数 传入值类型 解释 int 适配器序号, 只能是socket.ETH0, socket.STA, socket.AP,如果不填,会选择平台自带的方式,然后是最后一个注册的适配器 string ip_addr 地址 string port 端口,默认21 string…

工作杂记-YUV的dump和read

工作小记-YUV的dump和read 工作杂记-YUV的dump和read利用dump生成图片 yuv2imgyuv2img代码 工作杂记-YUV的dump和read 工作中涉及到模型验证相关的工作&#xff0c;这里是三个模型的共同作用&#xff0c;在感知模型读取图片的时候&#xff0c;把输入替换成自己给定的输入&…

MySQL索引事务

一、索引 使用一定的数据结构&#xff0c;来保存索引字段对应的数据&#xff0c;以后根据索引字段来检索&#xff0c;就可以提高检索效率。 一定的数据结构-->需要一定的空间来保存 建立索引&#xff1a;类似于建立书籍目录或者手机电话簿 使用索引&#xff1a;查询条件…

HiSilicon352 android9.0 emmc添加新分区

添加新分区 从emmc中单独划分出一个分区&#xff0c;用来存储相关数据&#xff08;可用于存储照片&#xff0c;视频&#xff0c;音乐和文档等&#xff09;或者系统日志log&#xff0c;从而不影响到其他分区。 实现方法&#xff1a; device/hisilicon/Hi3751V350/etc/Hi3751V3…

Spring Boot RESTful API

学习到接口部分了&#xff0c;记录一下 关于restful api感觉这篇文章讲的十分详细且通俗易懂一文搞懂什么是RESTful API - 知乎 (zhihu.com) Spring Boot 提供的 spring-boot-starter-web 组件完全支持开发 RESTful API &#xff0c;提供了 GetMapping&#xff1a;处理get请求…

Java中如何在两个线程间共享数据

Java中如何在两个线程间共享数据 在Java中&#xff0c;在两个线程之间共享数据是常见的需求&#xff0c;但需要小心处理以确保线程安全性。有多种方式可以在两个线程之间共享数据&#xff0c;下面将详细介绍这些方式&#xff0c;以及它们的优缺点。 方式1&#xff1a;共享可变…

VBA入门2——程序结构

VBA基础入门2 VBA 程序结构VBA 程序结构入门&#xff08;认识 VBA 程序骨架&#xff09;循环结构判断结构 VBA 变量的声明和赋值&#xff08;使程序动起来&#xff09;不同变量类型声明语句如何声明多个变量声明变量是必须的嘛&#xff1f;变量赋值 VBA 程序顺序结构&#xff0…

【原创】ubuntu18修改IP地址

打开网络配置文件 sudo vi /etc/network/interfaces结果发现如下内容&#xff1a; # ifupdown has been replaced by netplan(5) on this system. See # /etc/netplan for current configuration. # To re-enable ifupdown on this system, you can run: # sudo apt inst…

3.3 数据定义

思维导图&#xff1a; 前言&#xff1a; **核心概念**&#xff1a; - 关系数据库支持**三级模式结构**&#xff1a;模式、外模式、内模式。 - 这些模式中包括了如&#xff1a;模式、表、视图和索引等基本对象。 - SQL的数据定义功能主要包括了模式定义、表定义、视图和索引的定…

bootz启动 Linux内核过程中涉及的 do_bootm_states 函数

一. bootz启动Linux uboot 启动Linux内核使用bootz命令。当然还有其它的启动命令&#xff0c;例如&#xff0c;bootm命令等等。 本文只分析 bootz命令启动 Linux内核的过程中涉及的几个重要函数。具体分析 do_bootm_states 函数执行过程。 本文继上一篇文章&#xff0c;地址…

Axure常用技巧及问题

以下内容将持续更新 目录 一、技巧1、版本选择2、快捷键3、定制工具栏 二、问题1、无法在浏览器预览2、发布到本地的HTML无法查看 一、技巧 1、版本选择 2、快捷键 3、定制工具栏 上方菜单栏-右键-自定义工具栏 二、问题 1、无法在浏览器预览 需要更改Axure配置 点击发布-…

C#之常见图形文件格式及其特点

部分内容来源于Microsoft相关文档&#xff01; 日常生活中和软件开发中&#xff0c;经常会用到图形文件格式&#xff1a; BMP BMP 是 Windows 用来存储与设备无关的图像和与应用程序无关的图像的标准格式。 给定 BMP 文件的每像素位数&#xff08;1、4、8、15、24、32 或 64…