Linux 系统双网卡实现内网端口转发

部署运行你感兴趣的模型镜像
1. 环境:
(1) 一台 Linux 系统主机,此机器有双网卡:eth0 连接外网,eth1 连接内网。假定通向外网的 eth0 的连接信息如下(可以是静态 IP,也可以是 DHCP):
inet addr: 192.168.3.100
Gateway: 192.168.3.1
Nameserver: 192.168.3.2
通向内网的 eth1 的信息如下(此处只需要设定 IP 地址):
inet addr: 192.168.0.100
(2) 一台内网客户端主机,Windows/Linux/MacOSX 都可以。以下示例中,假定其网络连接信息为:
inet addr: 192.168.0.11
Gateway: 192.168.0.100
Nameserver: 192.168.3.2 (此处必须是作为 NAT 服务器的 Linux 主机的外网 DNS 服务器地址)
(3) 一台交换机或者路由器,用于构建内网。


2. Linux系统启用端口转发(NAT)功能:
(a) 一般的方法:执行命令
echo 1 > /proc/sys/net/ipv4/ip_forward
(b) 对于 SuSE,可以使用 yast 来设定,方法是启用 yast  ->  Network Devices  ->  Network Settings  ->  Routing  ->  Enable IPv4 Forwarding
(c) 检查端口转发是否正确启用,可以执行命令
cat /proc/sys/net/ipv4/ip_forward
如果返回结果为 1,则代表端口转发已经启用;若返回 0,则表示端口转发未启用。


3. 配置 NAT 规则:
(1) 配置 NAT 服务器,执行命令
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
其中 192.168.0.0 表示 192.168.0.x 的整个网络。 MASQUERADE 则表示从 NAT 服务器的网卡上自动获取当前的 IP 地址来做端口转发。否则,基于目标的网络地址转换模式(即 DNAT)需要在每次 NAT 服务器连接外网的 IP 地址变更的时候重新配置端口转发。也可以使用源地址目标转换模式(即 SNAT),命令是
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j SNAT --to-source 192.168.3.100
显然这种方式也会依赖命令中指定的通向外网的 IP 地址,所以仍然不够灵活。推荐使用第一种方式。
关于 SNAT 和 DNAT 的更多内容,可以参考 http://server.zdnet.com.cn/server/2008/0317/772069.shtml
(2) 允许端口转发,执行命令
iptables -A FORWARD -i eth1 -j ACCEPT
此命令将允许经过 eth1 网卡(连接内网)的所有数据包通向外网的转发。


4. 对于SuSE(如果作为 NAT 服务器的 Linux 主机是 SuSE 系统的话),还需要配置防火墙:
进入 yast -> Security and Users ->  Firewall  ->  Interfaces 中连接外网的 eth0 网卡配置为  External Zone,而连接内网的 eth1 网卡配置为 Internal Zone。然后在  Masquerading 中启用  Masquerade Networks


5. 一些需要用到的命令:
(1) 查看当前网络连接的 IP 地址以及 MAC 地址等等,但是无法显示网关以及 DNS 服务器地址:
ifconfig
(2) 查看当前网络连接的 DNS 服务器地址:
cat /etc/resolv.conf
(3) 查看当前网络连接的网关:
route
或者
netstat -nr

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值