使用下面的 route 命令可以查看 Linux 内核路由表。
# route
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 * 255.255.255.0 U 0 0 0 eth0
169.254.0.0 * 255.255.0.0 U 0 0 0 eth0
default 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
route 命令的输出项说明
输出项 说明
Destination 目标网段或者主机
Gateway 网关地址,”*” 表示目标是本主机所属的网络,不需要路由
Genmask 网络掩码
Flags 标记。一些可能的标记如下:
U — 路由是活动的
H — 目标是一个主机
G — 路由指向网关
R — 恢复动态路由产生的表项
D — 由路由的后台程序动态地安装
M — 由路由的后台程序修改
! — 拒绝路由
Metric 路由距离,到达指定网络所需的中转数(linux 内核中没有使用)
Ref 路由项引用次数(linux 内核中没有使用)
Use 此路由项被路由软件查找的次数
Iface 该路由表项对应的输出接口
3 种路由类型
主机路由
主机路由是路由选择表中指向单个IP地址或主机名的路由记录。主机路由的Flags字段为H。例如,在下面的示例中,本地主机通过IP地址192.168.1.1的路由器到达IP地址为10.0.0.10的主机。
Destination Gateway Genmask Flags Metric Ref Use Iface
----------- ------- ------- ----- ------ --- --- -----
10.0.0.10 192.168.1.1 255.255.255.255 UH 0 0 0 eth0
网络路由
网络路由是代表主机可以到达的网络。网络路由的Flags字段为N。例如,在下面的示例中,本地主机将发送到网络192.19.12的数据包转发到IP地址为192.168.1.1的路由器。
Destination Gateway Genmask Flags Metric Ref Use Iface
----------- ------- ------- ----- ----- --- --- -----
192.19.12 192.168.1.1 255.255.255.0 UN 0 0 0 eth0
默认路由
当主机不能在路由表中查找到目标主机的IP地址或网络路由时,数据包就被发送到默认路由(默认网关)上。默认路由的Flags字段为G。例如,在下面的示例中,默认路由是IP地址为192.168.1.1的路由器。
Destination Gateway Genmask Flags Metric Ref Use Iface
----------- ------- ------- ----- ------ --- --- -----
default 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
配置静态路由
route 命令
设置和查看路由表都可以用 route 命令,设置内核路由表的命令格式是:
# route [add|del] [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]
其中:
add : 添加一条路由规则
del : 删除一条路由规则
-net : 目的地址是一个网络
-host : 目的地址是一个主机
target : 目的网络或主机
netmask : 目的地址的网络掩码
gw : 路由数据包通过的网关
dev : 为路由指定的网络接口
route 命令使用举例
添加到主机的路由
# route add -host 192.168.1.2 dev eth0:0
# route add -host 10.20.30.148 gw 10.20.30.40
添加到网络的路由
# route add -net 10.20.30.40 netmask 255.255.255.248 eth0
# route add -net 10.20.30.48 netmask 255.255.255.248 gw 10.20.30.41
# route add -net 192.168.1.0/24 eth1
添加默认路由
# route add default gw 192.168.1.1
删除路由
# route del -host 192.168.1.2 dev eth0:0
# route del -host 10.20.30.148 gw 10.20.30.40
# route del -net 10.20.30.40 netmask 255.255.255.248 eth0
# route del -net 10.20.30.48 netmask 255.255.255.248 gw 10.20.30.41
# route del -net 192.168.1.0/24 eth1
# route del default gw 192.168.1.1
设置包转发
在 CentOS 中默认的内核配置已经包含了路由功能,但默认并没有在系统启动时启用此功能。开启 Linux 的路由功能可以通过调整内核的网络参数来实现。要配置和调整内核参数可以使用 sysctl 命令。例如:要开启 Linux 内核的数据包转发功能可以使用如下的命令。
# sysctl -w net.ipv4.ip_forward=1
这样设置之后,当前系统就能实现包转发,但下次启动计算机时将失效。为了使在下次启动计算机时仍然有效,需要将下面的行写入配置文件/etc/sysctl.conf。
# vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
用户还可以使用如下的命令查看当前系统是否支持包转发。
# sysctl net.ipv4.ip_forward
分享到:
相关推荐
Linux 路由表是 Linux 操作系统中的一种网络路由管理机制,用于管理和维护网络路由信息。路由表是一个数据结构,存储着网络路由信息,包括destination IP地址、网关 IP 地址、子网掩码、flags 等信息。 Linux ...
Linux路由表是操作系统核心网络功能的关键组成部分,负责指导数据包从源到目的地的正确传输。在山西长治供电公司的环境中,理解Linux路由表的结构和算法对于优化网络性能至关重要。本文将深入探讨Linux路由表的多层...
Linux巡检及维护是系统管理员日常工作中不可或缺的部分,它涵盖了检查系统状态、性能监控、问题排查等多个方面。以下是一些核心的Linux巡检和维护知识点: 1. **系统信息查询**: - `uname -a`:显示系统信息,...
以下是一些关于“维护常用Linux命令\Shell技巧”的详细知识点: 1. **基本命令操作**: - `ls`:列出目录内容。 - `cd`:切换目录。 - `pwd`:显示当前工作目录。 - `mkdir`:创建新目录。 - `rm`:删除文件或...
### Linux常用系统维护命令知识点详解 #### 一、获取系统基本信息 **1. 查看Linux内核版本** - **命令**: `uname -a` - **用途**: 该命令可以显示当前系统的内核版本信息,包括操作系统名称、内核版本号等。 - *...
Linux 日常维护常用命令集合整理 Linux 操作系统是一个强大的操作系统,它提供了许多实用的命令来帮助用户完成日常维护和管理任务。下面是 Linux 日常维护常用命令的集合整理: 网络命令 1. `ifconfig`:显示网络...
Linux内核维护一个IP路由表,使用route命令可以查看或修改该路由表。 ### Linux内核IP路由表 文档中还包含了Linux内核中维护的IP路由表的一些示例。例如,路由表中的“Destination”指的是目标网络,“Gateway”是...
理解路由表和静态路由的概念及其配置方法对于管理和维护网络至关重要。通过合理设置路由表,可以使网络通信更加高效,并有助于实现复杂的网络架构设计。对于Linux系统管理员而言,掌握`route`命令的使用是必不可少的...
在Linux系统中,命令行是管理和维护系统最强大的工具之一。本文将详细解读《Linux命令大全完整版.pdf》中所收录的各类命令,以帮助读者更好地理解和运用Linux命令。 1. Linux系统管理命令 系统管理命令是Linux系统...
在设计与实现方面,Linux内核的网络协议栈采用了模块化和层次化的结构,使得代码易于维护和扩展。例如,协议处理函数可以通过注册和注销机制动态加载或卸载,这允许系统根据需要支持新的协议或优化性能。 此外,...
Linux是一个功能强大且灵活的操作系统,它提供了许多配置文件和命令来帮助用户管理和维护系统。在本节中,我们将介绍一些常用的Linux配置文件和命令,帮助用户更好地理解和掌握Linux系统。 配置文件 /etc/...
《深入理解LINUX网络内幕和LINUX网络栈实现源代码分析合本》是...总的来说,这本书是Linux网络开发和维护人员的宝贵资源,通过阅读和实践,可以提高对Linux网络操作系统的深入理解,从而更好地应对各种网络相关的挑战。
在Linux操作系统上实现AODV路由协议需要解决两个主要问题:一是路由功能模块如何与内核路由表进行交互,二是如何在用户空间维护一个与内核路由表形成映射关系的路由缓冲表。 文章提出了利用Linux操作系统的网络过滤...
总之,理解Linux路由表、转发表、ARP表和MAC表对于网络管理员来说至关重要,因为它们是构建和维护高效、可靠的网络基础设施的基础。熟悉这些概念和工具,可以帮助管理员更好地诊断网络问题,优化路由策略,确保...
2. Zebra:处理路由信息和接口状态,维护路由表。 3. Quagga:提供了对OSPF, BGP等路由协议的支持。 三、Linux环境下的路由器构建 在Linux系统中,Zebra Linux Router可以通过以下步骤进行部署: 1. 安装依赖:...
Linux中的路由表分为main、default和local三类,策略路由会创建自定义的路由表。 2. **查看现有路由**:使用`route -n`或`ip route`命令查看当前的路由设置,以确定需要修改或添加哪些路由。 3. **创建自定义...
- **文件系统维护**:介绍了对Ext2/Ext3文件系统进行检查和修复的方法。 #### 十、无持久存储的文件系统(第十章) - **procfs与sysfs**:分别介绍了这两个特殊文件系统的特点及其用途。 - **元信息呈现**:讨论了...