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

参考

原理

从【没有宽带的服务器】发起网络请求,这个请求会首先进入【专有网络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服务器(包括具有公网访问权限的那一台)添加至该安全组中。

欢迎关注星球 : 点击打开

相关推荐
Johny_Zhao12 分钟前
Docker + CentOS 部署 Zookeeper 集群 + Kubernetes Operator 自动化运维方案
linux·网络安全·docker·信息安全·zookeeper·kubernetes·云计算·系统运维
鸭鸭鸭进京赶烤1 小时前
大学专业科普 | 云计算、大数据
大数据·云计算
SH11HF5 小时前
小菜狗的云计算之旅,学习了解rsync+sersync实现数据实时同步(详细操作步骤)
学习·云计算
snoopyfly~6 小时前
Ubuntu 24.04 LTS 服务器配置:安装 JDK、Nginx、Redis。
java·服务器·ubuntu
Me4神秘7 小时前
Linux国产与国外进度对垒
linux·服务器·安全
搞笑的秀儿8 小时前
信息新技术
大数据·人工智能·物联网·云计算·区块链
牛奶咖啡139 小时前
Linux系统的常用操作命令——文件远程传输、文件编辑、软件安装的四种方式
运维·服务器·软件安装·linux云计算·scp文件远程传输·vi文件编辑·设置yum的阿里云源
weixin_437398219 小时前
转Go学习笔记(2)进阶
服务器·笔记·后端·学习·架构·golang
tan77º11 小时前
【Linux网络编程】Socket - UDP
linux·服务器·网络·c++·udp
szxinmai主板定制专家12 小时前
【精密测量】基于ARM+FPGA的多路光栅信号采集方案
服务器·arm开发·人工智能·嵌入式硬件·fpga开发