IP转发如何帮助在Linux中将专用接口连接到Internet
时间:2020-03-05 15:28:20 来源:igfitidea点击:
我们将使用iptables将IP转发或者数据包从一个网络接口从一个网络接口转发到另一个网络。
IP转发是一种使Linux机器从一个网络发送到另一个路由器的概念。
因此,它可以用作路由器或者可以将Internet或者网络连接与多个客户端计算机的连接共享Internet或者网络连接的代理服务器。
以下是一些简单的步骤,可以启用IP转发或者网络数据包转发方法。
1.启用IPv4转发
首先,我们将在Linux操作系统中启用IPv4转发。
为此,我们需要在subs模式下在shell或者终端中执行以下命令。
$sudo -s # echo 1 > /proc/sys/net/ipv4/ip_forward
注意:上面的命令是即时且暂时启用IP转发,直到下一次重新启动。要永久启用它,我们需要使用我们喜欢的文本编辑器打开/etc/sysctl.conf。
# nano /etc/sysctl.conf
然后,将net.ipv4.ip_forward = 1添加到该文件中或者取消注释该行,然后我们需要保存并退出该文件。
net.ipv4.ip_forward = 1
要启用更改,请运行以下命令。
# sysctl -p /etc/sysctl.conf
2.配置iptables防火墙
我们需要允许特定(或者所有)数据包遍历我们的路由器。
在此之前,我们需要知道与我们的Linux框连接的网络设备的接口名称。
要获取接口名称,我们可以简单地在终端或者shell中运行以下命令。
# ifconfig -a
其中在我们的框中,我们将eth2作为网络接口连接到Internet或者网络,WLAN2是我们需要使用IPTABLE转发来自ETH2的网络数据包。
因此,要这样做,我们需要运行以下命令。
# iptables -A FORWARD -i wlan2 -o eth2 -j ACCEPT
注意:请使用Linux框中提供的设备名称替换WLAN2和ETH2.
现在,我们需要iptables允许已建立的连接流量,因为NetFilter是无状态防火墙。
为此,我们需要运行以下命令。
# iptables -A FORWARD -i eth2 -o wlan2 -m state --state ESTABLISHED,RELATED -j ACCEPT
3.配置NAT.
然后,最后,我们需要将源地址更改为通过执行下面的命令向Internet的数据包更改为eth2.
# iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE