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

news2024/11/15 8:22:42

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 1000
    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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 3e:85:b4:65:29:5a brd ff:ff:ff:ff:ff:ff
    inet 192.168.3.141/24 brd 192.168.3.255 scope global noprefixroute eth0
       valid_lft forever preferred_lft forever
    inet6 fd58:bc95:d4fb::6bd/128 scope global noprefixroute dynamic
       valid_lft 41513sec preferred_lft 41513sec
    inet6 fd58:bc95:d4fb:0:639d:3714:f9ef:bcf9/64 scope global noprefixroute
       valid_lft forever preferred_lft forever
    inet6 fe80::8c51:e8b9:1007:68ae/64 scope link noprefixroute
       valid_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 1000
    link/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 1000
    link/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 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    RX: bytes  packets  errors  dropped overrun mcast
    592        8        0       0       0       0
    TX: bytes  packets  errors  dropped carrier collsns
    592        8        0       0       0       0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 3e:85:b4:65:29:5a brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast
    129963605  1427572  0       19748   0       0
    TX: bytes  packets  errors  dropped carrier collsns
    78253987   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}'
 lo
 eth0

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.coloradmin.cn/o/1083953.html

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

相关文章

DHT11 数字湿温度传感器的原理和应用范例

目录 概述 1、应用电路连接说明 2、DHT11 数据结构 3、DHT11的传输时序 3.1 DHT11 开始发送数据流程 3.2 主机复位信号和 DHT11 响应信号 3.3 数字‘0’信号表示方法 3.4 数字‘1’信号表示方法 4、实例应用 4.1 硬件描述 4.2 管脚分配 4.3 程序代码 概述 DHT…

@所有燃气企业,城燃企业数字化转型重点抓住的八个关键点

关键词&#xff1a;智慧燃气、燃气数字化、设备设施数字化 数字化转型是用信息技术全面重塑企业经营管理模式&#xff0c;是企业发展模式的变革创新&#xff0c;是企业从工业经济时代迈向数字经济时代的必然选择。加快推进企业数字化转型&#xff0c;打造数字时代企业业务运行…

2023年中国超导磁体市场规模、需求量及行业竞争现状分析[图]

超导磁体一般是指用超导导线绕制的能产生强磁场的超导线圈&#xff0c;还包括其运行所必要的低温恒温容器。通常电磁铁是利用在导体中通过电流产生磁场&#xff0c;由于超导材料在超导状态下具有零电阻特性&#xff0c;因此可以以极小的面积通过巨大的电流。超导磁体具有场强高…

意大利航天飞行器公司【Sidereus】完成510万欧元融资

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 猛兽财经获悉&#xff0c;位于意大利萨莱诺的航天飞行器公司Sidereus Space Dynamics今日宣布已完成510万欧元融资。 本轮融资由Primo Space和CDP Venture Capital Sgr领投&#xff0c;通过Italia Venture II - Fondo Impr…

element picker 时间控件,指定区间和指定月份置灰

直接上代码 <el-date-pickerv-model"fillingList.declareDate"type"month":disabled"isDisplayName"placeholder"选择填报时间"value-format"yyyy-MM":picker-options"pickerOptions"change"declareDate…

玩转ChatGPT:图像识别(vol. 1)

一、写在前面 来了来了&#xff0c;终于给我的账号开放图像识别功能了&#xff0c;话不多说&#xff0c;直接开测&#xff01;&#xff01;&#xff01; 二、开始尝鲜 &#xff08;1&#xff09;咒语&#xff1a; GPT回复&#xff1a; 这幅图显示了从2005年1月到2012年12月的…

uniapp app获取keystore等一系列常用数据

https://blog.csdn.net/deepdfhy/article/details/88698492 参考文章 一、获取安卓证书keystore的SHA1和SHA256值 参数上面引用链接 window r : $ cmd $ D: 进入D盘 $ keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore 项目名称.ke…

uniapp app端使用谷歌地图选点定位

国内需要vpn 和申请谷歌地图的Maps JavaScript API 类型的 key,指引链接这里不详细介绍 一 、我们得通过webview 跳转谷歌地图 ,需要创建一个webview页面,里面跳转承载谷歌地图的html页面,如果是放在本地的话 html文件须遵守规范 放在 “项目根目录下->hybrid->html->…

Spring三级缓存流程再梳理

本文主要是说下在使用spring时遇到了循环依赖&#xff0c;Spring利用三级缓存怎么解决 getBean(beanName)doGetBean(name, null, null, false);getSingleton(beanName)方法&#xff0c; 最后会通过addSingleton(beanName, singletonObject)存到一级缓存里面去createBean(beanN…

如何进行pyhon的虚拟环境创建及管理

无论服务器或者本地&#xff0c;创建虚拟环境都是&#xff1a; 【Python】搭建虚拟环境_python创建虚拟环境_今天自洽了吗的博客-CSDN博客 虚拟环境绑定到项目 这个是运行环境&#xff0c;可以切换任意运行环境 如果是服务器上&#xff1a;可以先source xx/bin/active&#xf…

颠覆性语音识别:单词级时间戳和说话人分离 | 开源日报 No.53

vbenjs/vue-vben-admin Stars: 19.7k License: MIT Vue Vben Admin 是一个免费开源的中后台模板&#xff0c;使用最新的 vue3、vite4 和 TypeScript 等主流技术进行开发。该项目提供了现成的中后台前端解决方案&#xff0c;并可用于学习参考。 使用先进的前端技术如 Vue3/vit…

[电源选项]没有系统散热方式,没有被动散热选项

背景 笔记本的风扇声音太大&#xff0c;想改成被动散热方式&#xff0c;又不想影响性能。 于是我打开了控制面板\所有控制面板项\电源选项&#xff0c;点更改计划设置-> 更改高级电源设置。 想把散热方式改成被动散热。发现win11中好像没有这个选项了&#xff01; 如何…

JVM(一)

字节码文件的组成: 基础信息:魔数&#xff0c;字节码文件对应的java版本号&#xff0c;访问表示public final以及父类和接口 常量池:保存了字符串常量&#xff0c;类或者是接口名&#xff0c;字段名&#xff0c;主要在接口中使用 字段:当前类或者是接口声明的字段信息 方法:当…

win10 wsl安装步骤

参考&#xff1a; 安装 WSL | Microsoft Learn 一、安装wsl 1.若要查看可通过在线商店下载的可用 Linux 发行版列表&#xff0c;请输入&#xff1a; wsl --list --online 或 wsl -l -o> wsl -l -o 以下是可安装的有效分发的列表。 使用 wsl.exe --install <Distro>…

知识体系图谱

知识体系图谱 最近更新简历的时候&#xff0c;有种好像去年到今年学了很多&#xff0c;但是都零零散散的&#xff0c;不成体系&#xff0c;就想着抽时间总结归纳一下知识体系&#xff0c;目前我个人的技术栈是这样的&#xff1a; 还是稍微有点乱&#xff0c;下一次更新的时候再…

HQChart支持的画图工具列表

HQChart支持的画图工具列表 线段类线段射线标价线垂直线箭头趋势线水平线水平线段平行射线平行线平行通道价格通道线M头W底头肩型波浪尺AB波浪尺箱型线涂鸦线段 图形类圆弧线矩形平行四边形三角形圆对称角度 文字类文本箭头NoteAnchoredTextPriceLabelPriceNote 其他江恩角度线…

Ubuntu下怎么配置vsftpd

2023年10月12日&#xff0c;周四中午 目录 首先要添加一个系统用户然后设置这个系统用户的密码给新创建的系统用户创建主目录启动vsftpd服务查看vsftpd服务的状态打开外界访问vsftpd服务所需的端口获取服务器的IP地址大功告成 首先要添加一个系统用户 useradd 用户名然后设置…

如何应对量化交易,个人股票账户如何实现量化程序化自动交易

目前股票量化交易是对个人账户开放的&#xff0c;如果你没开通&#xff0c;可能是没有找对渠道&#xff0c;很多券商的手机客户端是包含某些简易版的策略交易&#xff0c;如网格策略&#xff0c;自动止盈止损等&#xff0c;这些策略交易虽然简单、灵活性差&#xff0c;但也是量…

【数据安全】数据安全运维是什么意思?有什么意义?

随着数字化大力发展&#xff0c;保障企业重要资产数据的安全越发重要&#xff0c;因此衍生了数据安全运维工作。那你知道数据安全运维是什么意思&#xff1f;有什么意义&#xff1f; 数据安全运维是什么意思&#xff1f; 数据安全运维是将数据分析技术用于管理数据的过程&…

【萌新向】Sql Server保姆级安装教程-图文详解手把手教你安sql

首先打开百度&#xff0c;搜索sql server&#xff0c;找到图示词条&#xff0c;点击进去。 一般版本是需要付费的&#xff0c;正常开发可以使用免费版本【Express】&#xff0c;点击下载 下载完成后打开下载的文件。三个选项&#xff0c;我们选自定义方式。 选择语言和位置…