[TOC]
1 背景
客戶買了一批服務(wù)器亡电,有些買了公網(wǎng)IP。而有些ECS沒有購買公網(wǎng)IP锁保,但是又想要上互聯(lián)網(wǎng)怎么辦除抛?這個時候就需要借用iptables的路由轉(zhuǎn)發(fā)功能狮杨,讓沒有公網(wǎng)IP的ECS經(jīng)過有公網(wǎng)IP的ECS來出網(wǎng)。
這種需求镶殷,更加合理的轉(zhuǎn)發(fā)應(yīng)該是購買NAT網(wǎng)關(guān)禾酱。但是還真的有這樣的場景。
2 解決方案
2.1 華為云
參考文檔1:https://support.huaweicloud.com/usermanual-ecs/ecs_03_0705.html
參考文檔2: https://blog.csdn.net/catoop/article/details/122291776
2.1.1 場景
假設(shè)存在兩臺服務(wù)器绘趋,分別是
- 無公網(wǎng)IP的ECS01:10.10.0.213
- 有公網(wǎng)IP的ECS02:10.10.0.214
這時候要執(zhí)行的操作一共有兩步颤陶,首先是在ECS02上打開路由轉(zhuǎn)發(fā)功能并配置SNAT規(guī)則,然后在ECS01上增加對應(yīng)的路由規(guī)則即可陷遮。
2.1.2 步驟
- 在ECS02上打開路由轉(zhuǎn)發(fā)功能并配置SNAT規(guī)則
echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf
sysctl -p
iptables -t nat -I POSTROUTING -s 10.10.0.0/24 -j SNAT --to-source 10.10.0.214
- 在ECS01上配置路由規(guī)則
我這里的配置方法就比較暴力了滓走,直接修改網(wǎng)卡的配置文件,把網(wǎng)關(guān)的地址修改為10.10.0.214帽馋,如下
IPADDR=10.10.0.213
PREFIX=24
GATEWAY=10.10.0.214
DNS1=223.5.5.5
- 華為云的話還需要額外進(jìn)行一個操作搅方,就是在ECS02上,關(guān)閉
源/目的檢查
的功能绽族,該功能在彈性網(wǎng)卡的菜單下姨涡。
參考文檔上要求還需要配置VPC路由信息,但是我發(fā)現(xiàn)不配置也是可以直接訪問互聯(lián)網(wǎng)吧慢。
2.2 天翼云
操作方法同華為云
2.3 阿里云
操作方法類似華為云涛漂,不同的點(diǎn)有兩個:
- 阿里云的彈性網(wǎng)卡沒有
源/目的檢查
的功能 -
阿里云上需要配置VPC路由也就是,在路由表上新增一條類似這樣的路由條目: