AWS 中,同一 VPC 里面机器只用一个公网 IP 就可以访问,是怎么实现的??

2016-09-07 04:29:42 +08:00
 SharkIng

发现一种使用情况:

  1. 域名 /子域名 解析的时候都是解析在同一个 IP 上面的
  2. 这个 IP 是一个弹性 IP 地址,解析在某个 VPC 中的其中一个机子上的。
  3. 每个子域名对应的服务 /网站都是跑在某个 VPC 中的其它机子上的,这些机子只有对应的内网 IP 地址

这是怎么实现的一个公网 IP 对应好几个 EC2 的机器?? 我查了 AWS 的路由表没有什么特别的实现,感觉一头雾水,谁给提点一下

6684 次点击
所在节点    Amazon Web Services
16 条回复
binux
2016-09-07 06:08:11 +08:00
ELB?
jinbakei
2016-09-07 06:41:55 +08:00
outbound http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html
inbound 也许那个机子上有 load balancer 之类的 Proxy
yaxin
2016-09-07 08:09:41 +08:00
这不是普通负载均衡的功能吗?
chinawrj
2016-09-07 08:15:22 +08:00
iptables 不就可以搞定的事情吗?
iptables -I PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.24.130.1:80
iptables -I PREROUTING -p tcp --dport 443 -j DNAT --to-destination 10.24.130.2:443
iptables -I PREROUTING -p tcp --dport 3306 -j DNAT --to-destination 10.24.130.12:3306
voostar
2016-09-07 09:27:27 +08:00
这个?

应用程序负载均衡器详细信息

应用程序负载均衡器是 Elastic Load Balancing 服务的一个负载均衡选项,在应用程序层运行,支持您在运行于一个或多个 Amazon Elastic Compute Cloud (Amazon EC2) 实例上的多个服务或容器之间基于内容定义路由规则。
SharkIng
2016-09-07 09:39:57 +08:00
@binux
@yaxin
@voostar 查看了负载均衡里面没有任何设置


@chinawrj 看了所有相关机子的 iptables-save, 没有这样的一条记录


@jinbakei 看起来像是这个,但是 outbound 是指显示的东西么?
wzxjohn
2016-09-07 09:52:02 +08:00
你的描述有 N 多种方法可以做到。。。最简单的我在外网机器跑个 Nginx 反代,你说的这些就都能做到了。
wobuhuicode
2016-09-07 10:10:50 +08:00
Nginx 就能搞定啦
cevincheung
2016-09-07 10:34:14 +08:00
aws 现在一年多少银子
fookwood
2016-09-07 11:26:04 +08:00
虽然没搞过类似的东西,但是猜测是弹性 ip 对应的 ec2 运行了个 nginx ,然后有类似下面这样的配置
http {
server {
listen 80;
server_name name1.name.com;
location / {
proxy_pass http://192.168.0.2;
}
}
server {
listen 80;
server_name name2.name.com;
location / {
proxy_pass http://192.168.0.3;
}
}
}
kozora
2016-09-07 11:41:17 +08:00
vpc 里面子网是互通的,你拿一个 EIP 对外就可以做到负载均衡的
dzxx36gyy
2016-09-07 11:48:44 +08:00
不是 nat 吗……一堆内网机器配一个外网 ip 映射下不就行了
xderam
2016-09-07 16:15:05 +08:00
我也感觉是 NAT 或者 VPC 绑在路由器上之类的,或者和前面几位说的端口转发,均衡负载巴拉巴拉。楼主说的不太清楚。。
SharkIng
2016-09-07 22:56:29 +08:00
@wzxjohn 嗯,我知道有很多方法,但是最简单的几个办法都看了都不是(什么 Nginx , iptables , route 之类的的)

@wobuhuicode
@fookwood 没有 Nginx


@cevincheung 看你使用多少了,我主要是公司这边在用,一个月大概 22 万美金


@kozora 只要是 VPC 都是互通的么?一个 EIP 就可以了??


@dzxx36gyy
@xderam 感觉是,但是在哪里看呢?
bruce
2016-09-08 00:54:05 +08:00
NAT Gateway
chinawrj
2016-09-08 20:46:33 +08:00
@SharkIng 不是你的机器配置的。是 aws 那边,你看不到的。谢谢。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/304443

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX