# 静态路由临时添加命令格式(重启失效)# route add -net 目的网段 gw 下一跳地址# 说明:-net 指定目标网段,gw 指定下一跳的网关/路由器IP地址# ========== 开启Linux内核的IP路由转发功能(路由必备,默认关闭) ==========# 1. 查看当前路由转发功能状态,0=关闭,1=开启[root@router-a ~]# cat /proc/sys/net/ipv4/ip_forward0# 2. 临时开启路由转发功能,将数值1写入对应内核参数文件(重启服务器失效)[root@router-a ~]# echo 1>/proc/sys/net/ipv4/ip_forward# 3. 验证路由转发功能是否开启成功[root@router-a ~]# cat /proc/sys/net/ipv4/ip_forward1
3、永久添加静态路由(重启不失效)
# 永久静态路由配置规则:在 /etc/sysconfig/network-scripts/ 目录下,创建 【route-网卡名称】 文件# 文件命名规范:route-出接口名称 ,例如网卡为ens37,则文件名必须是 route-ens37# 文件内容格式:目的网段 via 下一跳地址 dev 出接口名称# via 指定下一跳网关,dev 指定数据包的出网网卡,三者缺一不可# 查看配置好的永久静态路由文件示例[root@router-a ~]# cat /etc/sysconfig/network-scripts/route-ens37192.168.126.0/24 via 192.168.248.11 dev ens37
4、永久修改内核路由转发参数(关键,重启永久生效)
# ========== 方法补充:查看内核参数相关命令 ==========# 1. 查看系统所有内核参数配置# sysctl -a # 2. 过滤查询路由转发相关内核参数# sysctl -a | grep "ip_forward"# ========== 永久开启路由转发,修改核心配置文件 ==========# 编辑/etc/sysctl.conf内核参数主配置文件,写入固定配置项[root@router-a ~]# cat /etc/sysctl.confnet.ipv4.ip_forward =1# 重新加载sysctl.conf配置文件,使修改的内核参数立即生效,无需重启服务器[root@router-a ~]# sysctl -p
二、tcpdump 抓包实操(抓取ping包案例)
tcpdump是Linux系统自带的纯命令行网络抓包工具,轻量高效,无需额外安装,是排查网络连通性、分析数据包的首选工具,以下为最常用的抓取ICMP协议(ping包)完整实操。
# tcpdump 抓包命令:抓取指定网卡的ping包(ICMP协议)# 命令参数说明:# -i ens33 :指定要抓包的网卡名称为ens33,不加该参数默认抓取所有网卡# -nn :不解析IP地址和端口号为域名/服务名,纯数字显示,抓包速度更快、结果更直观# icmp :指定只抓取ICMP协议的数据包,ping命令基于ICMP协议通信,精准过滤ping包[root@node02 ~]# tcpdump -i ens33 -nn icmp tcpdump: verbose output suppressed, use -v or -vv for full protocol decodelistening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes14:06:46.027991 IP 192.168.146.10>192.168.126.10: ICMP echo request, id 17021, seq 1, length 6414:06:46.028023 IP 192.168.126.10>192.168.146.10: ICMP echo reply, id 17021, seq 1, length 6414:06:47.048360 IP 192.168.146.10>192.168.126.10: ICMP echo request, id 17021, seq 2, length 6414:06:47.048406 IP 192.168.126.10>192.168.146.10: ICMP echo reply, id 17021, seq 2, length 64
抓包结果说明:echo request是请求包(本机发送的ping请求),echo reply是应答包(目标主机的ping回应),能抓取到这两类包,说明本机与目标IP的ICMP通信正常。

