Linux ip 命令使用指南

Linux ip 命令使用指南

简介

ip 命令是 Kali Linux 中功能强大的网络配置工具,用于显示或操纵路由、网络设备、策略路由和隧道等。它是 ifconfig 命令的替代品,提供了更多高级功能和更灵活的网络配置选项

语法

bash 复制代码
ip [选项] 对象 { 命令 | help }

选项

选项 描述
-V, --version 显示指令版本信息
-s, --statistics 输出更详细的统计信息
-d, --details 输出详细信息
-r, --resolve 显示主机时使用域名而非IP地址
-f, --family { inet inet6
-4 等同于 -f inet,指定使用IPv4协议
-6 等同于 -f inet6,指定使用IPv6协议
-o, --oneline 每条记录输出一行,不换行显示
-a, --all 显示所有对象
-c, --color 彩色输出

对象

ip 命令可以操作的主要对象包括:

对象 描述
link 网络设备相关设定(MTU、MAC地址等)
address/addr IP地址相关设定
route 路由表相关设定
rule 策略路由规则
neigh 邻居表(ARP缓存)管理
tunnel 隧道配置
netns 网络命名空间管理

常用示例

1. 查看网络接口信息

bash 复制代码
# 查看所有网络接口
ip link show

# 查看指定接口详细信息
ip -s link show eth0

2. 配置IP地址

bash 复制代码
# 添加IP地址
ip addr add 192.168.1.100/24 dev eth0

# 删除IP地址
ip addr del 192.168.1.100/24 dev eth0

# 查看IP地址
ip addr show
ip addr show eth0

1

3. 管理网络接口状态

bash 复制代码
# 启用网络接口
ip link set eth0 up

# 禁用网络接口
ip link set eth0 down

# 修改MTU值
ip link set eth0 mtu 1500

1

4. 管理路由

bash 复制代码
# 查看路由表
ip route show

# 添加默认路由
ip route add default via 192.168.1.1 dev eth0

# 添加静态路由
ip route add 10.0.0.0/8 via 192.168.1.2 dev eth0

# 删除路由
ip route del 10.0.0.0/8

1

5. 管理邻居表(ARP缓存)

bash 复制代码
# 查看邻居表
ip neigh show

# 添加静态ARP条目
ip neigh add 192.168.1.1 lladdr 00:11:22:33:44:55 dev eth0

# 删除ARP条目
ip neigh del 192.168.1.1 dev eth0

4

6. 策略路由

bash 复制代码
# 查看策略路由规则
ip rule show

# 添加策略路由规则
ip rule add from 192.168.1.0/24 table 100
ip route add default via 192.168.1.1 table 100

3

ip 与 ifconfig 的比较

功能 ip 命令 ifconfig 命令
查看所有接口 ip link show ifconfig -a
配置IP地址 ip addr add 192.168.1.100/24 dev eth0 ifconfig eth0 192.168.1.100 netmask 255.255.255.0
启用/禁用接口 ip link set eth0 up/down ifconfig eth0 up/down
查看路由 ip route show route -n

ip 命令的优势:

  • 支持更多高级功能(如策略路由、网络命名空间)
  • 提供更详细的网络信息
  • 更适合现代网络配置需求
  • 是 Linux 官方推荐的新一代网络配置工具
    5

注意事项

  1. 大多数 ip 命令需要 root 权限,使用时请加 sudo
  2. 配置的网络参数默认是临时的,重启后会失效
  3. 要永久保存网络配置,需要修改相应的配置文件
  4. 在较新的 Linux 发行版中,ifconfig 已逐渐被 ip 命令取代
  5. 可以使用 ip help 查看更多帮助信息

希望这份指南能帮助你掌握 Kali Linux 中的 ip 命令!

相关推荐
Johny_Zhao15 小时前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
blasit1 天前
笔记:Qt C++建立子线程做一个socket TCP常连接通信
c++·qt·tcp/ip
chlk1232 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑2 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件2 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号3 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash3 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI3 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行4 天前
Linux和window共享文件夹
linux
木心月转码ing4 天前
WSL+Cpp开发环境配置
linux