开发者社区 问答 正文

专有网络安装 N2N

现在阿里云的服务器都是专有网络了,没法选经典网络,ifconfig都看不到公共IP。在这种情况下如何安装N2N?
我用rinetd把私有ip和公共ip映射了。运行supernode, 然后在两个树莓派上运行edge节点,但是这两个edge节点无法互相ping通。

展开
收起
sdcf2003 2018-10-15 14:56:46 2332 分享 版权
阿里云 AI 助理回答

在阿里云专有网络(VPC)环境下,由于ECS实例默认不直接分配公网IP,您通过ifconfig查看不到公共IP是正常现象。要在这样的环境中安装并使用N2N以实现树莓派间的通信,可以采取以下步骤:

1. 确保VPC内网络连通性

  • 检查安全组规则:确保参与通信的ECS(或树莓派所在的ECS)实例所属的安全组规则允许相互间的访问。至少需要开放ICMP协议以便进行ping测试。
  • 同一VPC下互通:确认两台树莓派所在的ECS实例位于同一个VPC内,并且加入相同或允许互访的安全组中。

2. 使用弹性公网IP(EIP)或NAT网关

  • 弹性公网IP (EIP):为其中一台ECS实例绑定EIP,然后通过该EIP作为超节点(Supernode)的接入点。但请注意,直接通过EIP桥接N2N可能不是最理想的方案,更适合于外部访问而非内部通信。
  • NAT网关:配置NAT网关,使得VPC内的私有IP能够通过NAT网关访问公网。虽然您的需求主要在于内网通信,但正确配置NAT网关可以确保网络配置的完整性,便于未来可能的外向访问需求。

3. N2N Supernode 配置

  • 确保Supernode运行在一个可由所有Edge节点访问的位置,如果使用了EIP,则需确保Supernode监听的端口已开放相应的安全组入站规则。
  • Supernode应配置为接受来自VPC内私有IP的连接请求。

4. N2N Edge 节点配置

  • 在两个树莓派上运行的Edge节点,需要指定正确的Supernode地址(即EIP地址或通过NAT映射的公网地址及端口)来建立隧道。
  • 确认Edge节点的配置文件中网络覆盖(Coverage)设置正确,以便它们能识别彼此为同一虚拟网络内的成员。

5. 测试与调试

  • 使用n2nc工具进行初步的连接测试,确保Edge节点能够成功连接到Supernode。
  • 再次尝试在两个Edge节点间进行ping测试,如果仍然不通,检查N2N的日志文件,寻找可能的配置错误或网络阻塞问题。

注意事项

  • 安全组策略:务必开放必要的端口,特别是N2N使用的UDP端口,以避免通信被阻止。
  • 网络ACL:如果启用了网络ACL,也要检查其规则,确保没有意外阻止内部流量。

通过上述步骤,您应该能够解决树莓派Edge节点间无法互相ping通的问题。如果问题依旧,请深入检查网络配置细节和日志信息,以定位具体原因。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答分类:
问答地址: