首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >强制所有网络流量通过默认网关

强制所有网络流量通过默认网关
EN

Unix & Linux用户
提问于 2015-06-30 09:49:30
回答 2查看 5.2K关注 0票数 1

我有一台机器,我想强迫所有流量通过默认网关。甚至是本地网络上的流量。

我已经通过删除这个接口的自动生成路由来工作了,但是它是否是通过网络脚本在RHEL/Centos中永久实现的一种方法呢?

默认路由表通常如下所示:

代码语言:javascript
复制
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

但我希望是在网络重新启动之后:

代码语言:javascript
复制
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
EN

回答 2

Unix & Linux用户

发布于 2015-06-30 09:58:38

至少通往网关的路由必须是直接的,也就是说,您需要

代码语言:javascript
复制
Kernel IP routing table
Destination     Gateway         Genmask           Flags Metric Ref    Use Iface
default         192.168.1.1     0.0.0.0           UG    0      0        0 eth0
192.168.1.1     0.0.0.0         255.255.255.255   U     0      0        0 eth0

最好的方法是修改本地网络的网络掩码(从/24 = 255.255.255.0/32 = 255.255.255.0,并将网络地址设置为"192.168.1.1“)。那么所有的流量都应该通过网关。

票数 2
EN

Unix & Linux用户

发布于 2015-06-30 12:52:02

看起来没有办法通过网络脚本删除我想要的路由。我想这不是一个非常常见的用例,但我真的不希望同一网络上的服务器能够相互交谈。

但是我确实找到了一个脚本,它在网络初始化后运行。

脚本/etc/sysconfig/network-scripts/ifup-post在末尾调用/sbin/ifup-local,如果它存在的话。

所以我创建了一个包含以下内容的内容:

代码语言:javascript
复制
#!/bin/bash
ip route delete 192.168.1.0/24

在重新启动网络之后,我没有这个本地网络路由。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/213053

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档