彻底清除:Linux永久删除单个路由的方法 (linux永久删除一条路由)

在Linux系统中,路由是如何管理网络连接的重要组成部分。然而,有时候我们需要删除某个路由来修复网络问题或者重新配置系统。在一些情况下,我们需要永久清除某些路由。本文将介绍在Linux系统中彻底清除单个路由的方法。

在Linux中路由的定义

在Linux中,路由表是由内核动态生成和维护的。当我们向一个主机发送数据时,数据包会根据不同的网络连接选择合适的网卡发送出去。由于每个数据包的目标地址都不同,内核需要根据路由表来决定如何发送该数据包。路由表中存储了所有网络接口以及它们能够访问的网络。

在Linux中创建新的路由

当我们需要创建新的路由时,可以使用route或ip命令。下面是一些基本的例子:

route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.1

ip route add 192.168.1.0/24 via 192.168.0.1

这里,我们通过两个命令向路由表中添加一条新的路由。之一个命令使用route命令,指定了要访问的网络的地址,子网掩码和网关。第二个命令使用ip命令,通过添加“via”关键字指定了网关的IP地址。

在Linux中查看路由表

我们可以使用route或ip命令显示路由表。下面是一些基本的例子:

route -n

ip route list

这里,这两个命令都将路由表打印到屏幕上。

在Linux中删除路由

如果我们需要删除某个路由,有两种不同的方法。

方法一:使用route命令

要删除一个路由,可以使用route命令的del选项。下面是一个基本的例子:

route del -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.1

这里,我们使用del选项指定要删除的路由的地址、子网掩码和网关。

方法二:使用ip命令

另外,我们可以使用ip命令删除路由。下面是一个基本的例子:

ip route del 192.168.1.0/24 via 192.168.0.1

这里,我们使用del选项指定要删除的路由的目标网络地址和网关。

如何彻底删除一个路由

删除一个路由并不是真正意义上的删除。它只是从路由表中删除了该路由。然而,我们可能还需要彻底清除该路由,使其无法被恢复。要做到这一点,我们需要删除该路由的缓存,并且还需要清除arp缓存。

下面我们将介绍如何清除路由缓存和arp缓存。

清除路由缓存

要清除路由缓存,可以使用command:

ip route flush cache

这个命令将清除所有已知的路由缓存。

清除arp缓存

要清除arp缓存,可以使用command:

arp -d

这个命令将删除arp缓存中与指定IP地址相关的项目。

如果需要清除整个arp缓存,可以使用command:

ip neigh flush all

这个命令将删除整个arp缓存。

结论

相关问题拓展阅读:

Windows/Linux配置静态路由

windows添加静态路由

Windows 10系统为例:

1. 屏幕左下角“开始”点鼠标右键选择“Windows PowerShell(管理员)”。

2. 在命令行下输入route命令,会有对应的提示信息。

示例:

1. 查看所有的路由信息

route print

2. 添加一条路由条目

route add 157.0.0.0 MASK 255.0.0.0 157.55.80.1

route add 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3

route add 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2

3. 添加一条永久路由条目(-p 表示永久路由,重启后不丢失)

route add 157.0.0.0 MASK 255.0.0.0 157.55.80.1 -p

4. 删除路由条目

route delete 157.0.0.0 MASK 255.0.0.0

5. 修改路由条目(CHANGE 只用于修改网关和/或跃点数)

route CHANGE 157.0.0.0 MASK 255.0.0.0 157.55.80.5 METRIC 2 IF 2

linux添加静态路由

linux下添加静态路由的命令(命令行临时添加):

方法一:

添加路由

route add -net 192.168.0.0/24 gw 192.168.0.1

route add -host 192.168.1.1 dev 192.168.0.1

删除路由

route del -net 192.168.0.0/24 gw 192.168.0.1

add 增加路由 del 删除路由

-net 设置到某个网段的路由 gw 出口网关IP地址

-host 设置到某台主机的路由 dev 出口网关物理设备名

增加默认路由:route add default gw 192.168.0.1

route -n 查看路由表

方法二:

添加路由

ip route add 192.168.0.0/24 via 192.168.0.1

ip route add 192.168.1.1 dev 192.168.0.1

删除路由

ip route del 192.168.0.0/24 via 192.168.0.1

add 增加路由 del 删除路由

via 网关出口 IP地址 dev 网关出口物理设备名

增加默认路由

ip route add default via 192.168.0.1 dev eth0

查看路由信息 ip route

在linux下设置永久路由:

方法1:在/etc/rc.local里添加

route add -net 192.168.0.0/24 dev eth0

route add -net 192.168.1.0/24 gw 192.168.2.254

方法2:/etc/sysconfig/static-routes : (没有static-routes的话就手动建立一个

这样的文件)

any net 192.168.0.0/24 gw 192.168.3.254

any net 10.250.228.128 netmask 255.255.255.192 gw 10.250.228.129

开启 IP 转发:

# echo “1” >/proc/sys/net/ipv4/ip_forward (临时)

# vi /etc/sysctl.conf –> net.ipv4.ip_forward=1 (永久开启)

用route命令添加永久路由

使用双网卡,同时使用2个网关的时候就需要加一条

静态路由

了。当然还有很多时候会需要加路由。

一:使用 route 命令添加

使用route 命令添加的路由,机器重启或者网卡重启后路由就失效了,方法:

//添加到主机的路由

//添加到网络的路由

//添加

默认网关

//删除路由

二:在linux下设置永久路由的方法:

1.在 /etc/rc.local 里添加

方法:

2.在 /etc/sysconfig/network 里添加到末尾

方法: GATEWAY=gw-ip 或者 GATEWAY=gw-dev

3. /etc/sysconfig/static-routes :

如果在 rc.local 中添加路由会造成NFS无法自动挂载问题,所以使用 static-routes 的方法是更好的。无论重启系统和 service network restart 都会生效

以下是蚊子解决NFS问题的描述:

按照linux启动的顺序, rc.local 里面的内容是在linux所有服务都启动完毕,最后才被执行的,也就是说,这里面的内容是在netfs之后才被执行的,那也就是说在netfs启动的时候,服务器上的静态路由是没有被添加的,所以netfs挂载不能成功。

static-routes 文件又是什么呢,这个是network脚本执行时调用的一个文件,这个文件的放置在 /etc/sysconfig 目录下,在network脚本中的位置是:

从这段脚本可以看到,这个就是添加静态路由的方法,static-routes的写法是

这样的话,在启动network脚本的时候路由就自动添加上了,又因为network是在netfs前面启动的,自然在挂载nfs的时候就正常了。

这样看来,如果需要添加静态路由,使用 static-routes 文件要比使用rc.local好,而且当改变了网络配置,需要重启network脚本的 时候,相应的静态路由是可以自动添加上的,但这时如果使用rc.local的话,在重启network服务的时候,原本添加好的静态路由就消失了。

linux内核中何时会删除配置的ipv静态路由

您好,请问您是想知道linux内核中何时会删除配置的ipv6静态路由吗?

  主机只有一块网卡的时候,不会涉及到默认路由和静态路由的问题。两块网卡时,也可以一块配置有网关(默认路由走这个网卡),另外一块只配置IP和掩码确认(该主机同网络的可以互通)。不过在稍大型的、有多网段的环境里就需单独进行默认路由和静态路由的配置了。   一、需求   目前有如下的一个网络,主机有两个桐尺烂网卡,两个网段分别是是业务地址eth0和管理地址eth1。   业务地址段为:192.168.3.0/24段   管理地址段:10.212.52.0/24段   防火墙段:10.211.6.0/24段   现在的需求是,默认路由走业务地址(192.168.3.0/24),防火墙段走10.211.6.0/24业务地址,10.0.0.0/8的所有地址都走管理地址段。   二、redhat静态路由配置   在redhat环境下,有三种配置方法   方法一:在/etc/sysconfig/network配置文件中配置:   代码如下:.211.6.0/24 via 192.168.3.1 dev eth.0.0.0/8 via 10.212.52.1 dev eth1 #10.212.52.1为eth1网卡的网关地址   注:该种配置写法同样支持写到/etc/sysconfig/network-scripts/route-interferface 配置文件中。   具体可以参看redhat官方文档。   方法二:在/etc/sysconfig/network-scripts/route-interferface 配置文件配置   在这里支持两种配置格式的写法   A:方法1中提到的方法   代码如下:   # cat /局漏etc/sysconfig/network-scripts/route-eth0   0.0.0.0/0 via 192.168.3.1 dev eth.211.6.0/24 via 192.168.3.1 dev eth0   # cat /etc/sysconfig/network-scripts/route-eth.0.0.0/8 via 10.212.52.1 dev eth1   B:网络掩码法   代码如下:   # cat /etc/sysconfig/network-scripts/route-eth0   ADDRESS0=0.0.0.0   NETMASK0=0.0.0.0   GATEWAY0=192.168.3.1   ADDRESS1=10.211.6.0   NETMASK1=255.255.255.0   GATEWAY1=192.168.3.1   其中网段地址和掩码全是0代表为所有网段,即默认路由。   # cat /etc/sysconfig/network-scripts/route-eth1   ADDRESS0=10.0.0.0   NETMASK0=255.0.0.0   GATEWAY0=10.212.52.1   网络掩码法也可以参看redhat官方文档。   方法三:/etc/sysconfig/static-routes配置   代码如下:   # cat /etc/sysconfig/static-route   any net any gw 192.168.3.1   any net 10.211.6.0/24 gw 192.168.3.1   any net 10.0.0.0 netmask 255.0.0.0 gw 10.212.52.1   注:默认情况下主机中并没有该文件,之所以该方法也可以是因为/etc/init.d/network启动脚本会调用该文件,具体调用部分代码如下:   代码如下:   # Add non interface-specific static-routes.   if ; then   grep ^any /etc/sysconfig/static-routes while read ignore args ; do   /in/route add -$args   done   困余fi   三、suse静态路由配置   方法1:通过/etc/sysconfig/network/routes配置文件   代码如下:   # cat routes   default 192.168.3..0.0.0 10.212.52.1 255.0.0.0 eth.211.6.0 192.168.3.1 255.255.255.0 eth0   注:其中之一条配置的为默认路由,默认路由掩码和接口可以以- 代替。注意非默认路由不可以这样做。   方法2:通过/etc/sysconfig/network/ifroute-*配置文件   /etc/sysconfig/network/ifroute-* ,这里的星号代表的相应的设备号,如上面的配置,可以使用以下进行配置:   代码如下:   # cat /etc/sysconfig/network/ifroute-eth0   0.0.0.0 192.168.3.1 0.0.0.0 eth.211.6.0 192.168.3.1 255.255.255.0 eth0   # cat /etc/sysconfig/network/ifroute-eth.0.0.0 10.212.52.1 255.0.0.0 eth1   具体也可以参看novell站点文档 或 suse 官方文档 。在novell 站点文档,有如下一段说明:   代码如下:   define an additional configuration file: /etc/sysconfig/network/ifroute-*. Replace * with the name of the interface.   The entries in the routing configuration files look like this:   DESTINATION GATEWAY NETMASK INTERFACE   DESTINATION GATEWAY PREFIXLEN INTERFACE   DESTINATION/PREFIXLEN GATEWAY – INTERFACE   可以看到必需要配置的四个选项分别为:目标段或主机 接口网关地址 目标段掩码 接口   四、查看路由表   配置完成后,可以通过重启network服务生效,并通过下面的任一命令查看路由表信息:   代码如下:   # netstat -nr   # route -n   # ip route list   # ip route show

linux永久删除一条路由的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux永久删除一条路由,彻底清除:Linux永久删除单个路由的方法,Windows/Linux配置静态路由,用route命令添加永久路由,linux内核中何时会删除配置的ipv静态路由的信息别忘了在本站进行查找喔。


数据运维技术 » 彻底清除:Linux永久删除单个路由的方法 (linux永久删除一条路由)