Linux开启路由转发功能

本文介绍了如何在Linux环境下配置双网卡服务器进行路由转发,以实现不同网段主机间的通信。主要步骤包括开启内核路由转发、设置iptables NAT转发规则,并在相关服务器上配置默认路由。通过这种方式,服务器可以作为网关,允许A服务器通过B服务器与C服务器进行ping和ssh通信。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux开启路由转发功能

一、准备

  • 需求:两台不同网段的主机通信
  • 方案:另外启动一台服务器B,双网卡,一个网卡和服务器A通信,一个网卡和服务器C通信。A和C通信通过服务器B跳转。为什么不用路由器?因为没有(Doge)。
  • 环境
3台服务器,A、B、C,
A服务器:192.168.30.20/24

B服务器:192.168.30.1/24,eth0;  192.168.40.1/24,eth1

C服务器:192.168.40.20/24
  • 目标:让A可以ping和ssh到C机器

二、操作过程:

  1. 在B服务器上开启内核路由转发参数

临时生效:

echo "1" > /proc/sys/net/ipv4/ip_forward

永久生效的话,需要修改 /etc/sysctl.conf:

net.ipv4.ip_forward = 1

执行sysctl -p马上生效

  1. B服务器开启iptables nat转发
iptables  -t nat  -A POSTROUTING  -s 192.168.30.0/24 -d 192.168.40.0/24 -o eth1 -j  MASQUERADE

#配置源地址30网段,目标地址40网段的地址转换,从eth1网卡出。

iptables -t nat -A PREROUTING -s 192.168.40.0/24  -d 192.168.30.0/24 -o eth0 -j MASQUERADE

#配置源地址40网段,目标地址30网段的地址转换,从eth0网卡出。

永久保存:iptables-save > /etc/sysconfig/iptables
  1. 在A和C服务器上设置路由为B服务器IP
A:  route add -net 192.168.40.0 netmask 255.255.255.0 gw 192.168.30.1

C: route add -net 192.168.30.0 netmask 255.255.255.0 gw 192.168.40.1
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值