Linux 启用 IP 转发(IPv4 / IPv6)
Linux 启用 IP 转发 (IPv4 / IPv6)
IP 转发概述
默认情况下, 最新的 Linux 发行版通常会禁用 IP 转发功能。这种默认设置是合理的, 因为大多数用户并不需要启用 IP 转发功能。但是, 如果我们在设置一台 Linux 路由器/网关、VPN 服务器或简单的拨号服务器时, 就必须启用 IP 转发功能。
IP 转发使得 Linux 操作系统能够像路由器一样转发数据包, 或者更通用地说, 将数据包在不同的网络之间进行路由。在本教程中, 我们将学习如何在 Linux 系统上启用 IP 转发。这个过程相对简单, 同时我们也会了解如何将 IP 转发设置为临时启用或永久启用。
IP 转发是操作系统在一个接口上接受传入网络数据包的能力,识别该数据包不是发往系统本身,而是应该转发到另一个网络,然后再相应地继续传输。
默认情况下,任何最新的 Linux 发行版都会 禁用 IP 转发。因此,这是一个好主意,因为许多用户不需要 IP 转发,但是,如果我们要设置 Linux 路由器/网关 或 VPN 服务器 或只是一个简单的 拨入服务器 ,那么我们必须启用 转发。
IP 转发使操作系统(这里是 Linux)能够像路由器一样转发数据包,或者更普遍地说,通过其他网络路由它们。
在监听网络(Man in the middle attack in particular)时通常会激活 IP 转发,但在尝试使 Linux 机器成为多个网络之间的路由器时也会更简单。
临时启用
临时启用IP转发不需要修改配置文件, 但这种设置会在系统重启后失效。
查看当前状态
要查看当前 IP 转发的状态, 执行以下命令
1 | IPv4 |
如果返回 0, 表示 IP 转发被禁用;如果返回 1, 表示 IP 转发已启用
临时启用 IP 转发
临时修改, 在重启或者使用 sysctl 时会恢复默认
1 | 启用 IPv4 转发 |
永久启用
要永久启用 IP 转发, 需要修改系统配置文件 /etc/sysctl.conf
打开文件
/etc/sysctl.conf1
vim /etc/sysctl.conf
在文件末尾添加以下内容
1
2net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 1使配置立即生效
1
sysctl -p /etc/sysctl.conf





