1

我刚刚在我们的本地网络和 Amazon VPC 之间建立了一个 VPN 链接。

我们的本地网络有两个感兴趣的 ip 块:

  • 192.168.0.0/16 - 阻止本地-A
  • 10.1.1.0/24 - 阻止本地 B

AWS VPC 有一个 ip 块:

  • 172.31.0.0/16 - 阻止 AWS-A

我已经设置了到本地 A 和本地 B ip 块的静态路由的 VPN 连接。

我可以通过以下方式连接:

  • 本地 A 到 AWS-A 和
  • AWS-A 到本地-A。

我无法连接:

  • AWS-A 到本地 B(例如 173.31.17.135 到 10.1.1.251)

从 173.31.17.135 服务器来看,10.1.1.251 似乎正在解析为亚马逊服务器,而不是我们本地网络上的服务器。尽管将 local-B (10.1.1.0/24) 设置为 VPN 上的路由,但仍然如此。查看跟踪输出...

tracert 10.1.1.251

Tracing route to ip-10-1-1-251.ap-southeast-2.compute.internal [10.1.1.251]
over a maximum of 30 hops:

  1    <1 ms    <1 ms    <1 ms  169.254.247.13
  2    <1 ms    <1 ms    <1 ms  169.254.247.21
  3    33 ms    35 ms    36 ms  169.254.247.22
  4    34 ms    35 ms    33 ms  ip-10-1-1-251.ap-southeast-2.compute.internal [10.1.1.251]

当从 AWS 内部访问时,如何更改配置以便 10.1.1.251 地址解析到本地网络上的服务器?

披露 - 我也在 serverfault 上问过同样的问题。

编辑...跟踪到另一个子网

tracert -d 192.168.0.250

Tracing route to 192.168.0.250 over a maximum of 30 hops

  1    <1 ms    <1 ms    <1 ms  169.254.247.13
  2    <1 ms    <1 ms    <1 ms  169.254.247.21
  3    36 ms    35 ms     *     169.254.247.22
  4    35 ms    36 ms    34 ms  192.168.0.250

编辑 #2...tracetcp 到坏和好的目的地:

>tracetcp  10.1.1.251 -n

Tracing route to 10.1.1.251 on port 80
Over a maximum of 30 hops.
1       0 ms    0 ms    0 ms    169.254.247.13
2       0 ms    0 ms    0 ms    169.254.247.21
3       31 ms   31 ms   16 ms   169.254.247.22
4       *       *       *       Request timed out.
5       ^C

>tracetcp  192.168.0.250  -n

Tracing route to 192.168.0.250 on port 80
Over a maximum of 30 hops.
1       0 ms    0 ms    0 ms    169.254.247.13
2       0 ms    0 ms    0 ms    169.254.247.21
3       47 ms   46 ms   32 ms   169.254.247.22
4       Destination Reached in 31 ms. Connection established to 192.168.0.250
Trace Complete.

跃点 #3 是本地端的 VPN 端点。我们已经走得那么远,然后有些东西无法超越。所以是的,问题出在我们这边,即 AWS 设置很好。当我们深入了解它时,我会更新。

编辑#3

固定的!问题是我们在内部运行的梭子鱼防火墙。我们在防火墙中创建了传入和传出漏洞,并且没有日志显示对目的地的请求被阻止,因此我们很早就排除了防火墙的原因。无奈之下,我们迅速关闭了防火墙,连接正常。从那以后,我们更新了防火墙上的固件,它已经解决了这个问题,防火墙现在允许通过流量。

tracert 和 tracetcp 是有用的诊断工具,但防火墙从未出现在跃点列表中(即使现在它已修复),因此很难判断防火墙是否阻止了它。我本来希望所有流量都通过防火墙,并且防火墙将在跃点列表中。谢谢您的帮助。

4

1 回答 1

2

您似乎模糊了路由和名称解析之间的区别。这两件事是完全无关的。

查看往返时间,您肯定不会像在访问 AWS 服务器。我推测您的路由很好,但亚马逊的内部 DNS 服务向您显示了错误的名称。

您是否真的尝试过连接到您的 10.1.1.251 机器?直觉告诉我这很好,你只是看到了一个你没想到的主机名。

当然,解决方法是将您的 EC2 VPC 实例配置为使用您的公司 DNS 服务器而不是 Amazon 的。或者你可以使用tracert -d这样你就看不到这个。:)


好的,更新。你提到的解决方案和所涉及的延迟让我不这么认为。我仍然倾向于认为您实际上在某种程度上具有连接性,尽管因为 36 毫秒似乎莫名其妙地高。到另一个子网的往返时间是多少?

你能从 10.1.1.251 上拔下以太网电缆,看看它是否停止响应吗?

如果您从 LAN 上的 10.1.1.x 机器跟踪到 VPC,或者尝试从 10.1.1.x 连接到 VPC 机器......那里会发生什么?

于 2013-06-20T00:49:29.013 回答