阿里云多台没有宽带的服务器共享出网

参考

原理

从【没有宽带的服务器】发起网络请求,这个请求会首先进入【专有网络VPC(Virtual Private Cloud)】。在VPC中,系统会【查询路由表】,根据路由规则确定请求的转发路径。随后,请求会被【转发到有公网带宽的服务器】上,由这台服务器负责进一步处理并最终发出实际的网络请求到互联网。

可以理解为将有公网的服务器作为路由器进行使用。

操作

1、配置转发

进入有公网带宽的ECS的终端,编辑文件/etc/sysctl.conf

复制代码
vi /etc/sysctl.conf

将配置net.ipv4.ip_forward=1添加到最后一行,如:

复制代码
vm.swappiness = 0
net.ipv4.neigh.default.gc_stale_time = 120

# see details in https://help.aliyun.com/knowledge_detail/39428.html
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_announce = 2

# see details in https://help.aliyun.com/knowledge_detail/41334.html
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.tcp_synack_retries = 2

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

kernel.sysrq = 1
net.ipv4.ip_forward=1

保存后,执行命令,触发生效

复制代码
sysctl -p

检查是否生效(输出1表示已生效)

复制代码
cat /proc/sys/net/ipv4/ip_forward

设置ECS的路由表,转发所有数据

复制代码
iptables -t nat -A POSTROUTING -s 0.0.0.0/0 -j MASQUERADE
# 删除使用以下命令
# iptables -t nat -D POSTROUTING -s 0.0.0.0/0 -j MASQUERADE

检查配置是否生效

复制代码
iptables -L -t nat

输出内容如下:

复制代码
[root@iZbp1cfrqj4pztn8zh9yzsZ ~]# iptables -L -t nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
MASQUERADE  all  --  172.31.0.0/16        anywhere   

2、在阿里云上配置VPC路由表

对于下一跳的选择,您可以选择一个具备公网带宽的ECS(Elastic Compute Service,弹性计算服务)实例。确保所选的ECS实例已配置有公网宽带,以满足您的网络需求。

3、配置安全组

创建一个名为"内网互访"的安全组,并将所有需要共享公网宽带的ECS服务器(包括具有公网访问权限的那一台)添加至该安全组中。

欢迎关注星球 : 点击打开

相关推荐
Heavydrink几秒前
阿里云龙蜥8系统安装Docker详细教程
阿里云·docker·云计算
墨寒博客栈40 分钟前
Linux基础常用命令
java·linux·运维·服务器·前端
重生之我在20年代敲代码42 分钟前
【Linux网络编程】初识网络,理解TCP/IP五层模型
linux·运维·服务器·网络
疯狂的小强呀1 小时前
如何利用 Jupyter 从浏览器访问远程服务器
服务器·jupyter·浏览器访问服务器·jupyter远程访问服务器
GalaxyPokemon1 小时前
PlayerFeedback 插件开发日志
java·服务器·前端
wheeldown2 小时前
【Linux】从内存布局到信号屏蔽:Linux 内核态与用户态交互核心知识点汇总
linux·运维·服务器
落羽的落羽2 小时前
【Linux系统】C/C++的调试器gdb/cgdb,从入门到精通
linux·服务器·c语言·c++·人工智能·学习·机器学习
张彦峰ZYF2 小时前
高频面试题(含笔试高频算法整理)基本总结回顾5
linux·运维·服务器
后端小张2 小时前
【案例实战】初探鸿蒙开放能力:从好奇到实战的技术发现之旅
分布式·华为·云计算·harmonyos·鸿蒙·鸿蒙系统·万物互联
DO_Community2 小时前
裸金属 vs. 虚拟化 GPU 服务器:AI 训练与推理应该怎么选
运维·服务器·人工智能·llm·大语言模型