
# 连接失败，提示：No route to host以及connection attempt failed
#### 问题描述
使用如下命令连接DDS实例时报错。
**./mongo --host 192.168.1.6 --port 8635 -u rwuser -p** *xxxxxxxxx* **--authenticationDatabase admin --ssl --sslCAFile /root/ca.crt --sslAllowInvalidHostnames**
报错信息如下：
```
MongoDB shell version v3.4.17
connecting to: mongodb://192.168.1.6:8635/
2019-09-19T09:38:36.954+0800 W NETWORK  [thread1] Failed to connect to 192.168.1.6:8635, in(checking socket for error after poll), reason: No route to host
2019-09-19T09:38:36.954+0800 E QUERY    [thread1] Error: couldn't connect to server 192.168.1.6:8635, connection attempt failed :
connect@src/mongo/shell/mongo.js:240:13
@(connect):1:6
exception: connect failed
```
#### 可能原因
- DDS实例的端口错误，不可用。
- DDS实例与ECS不在同一个区域。
- DDS实例与ECS不在同一个子网。
 
#### 排查思路
1. 检查DDS实例与ECS是否在同一个区域、同一个安全组和子网内。 
   1. 登录DDS控制台，单击实例名称，在基本信息页面查看DDS实例所在的区域、VPC、安全组和子网信息。
      图1查看DDS实例网络信息   
      ![](https://support.huaweicloud.com/trouble-dds/zh-cn_image_0000001176876652.png) 
   
   2. 登录弹性云服务器控制台，单击云服务器名称，在基本信息页面，查看当前ECS所在的区域、VPC、安全组和子网信息。
      图2查看ECS网络信息   
      ![](https://support.huaweicloud.com/trouble-dds/zh-cn_image_0000001222438035.png) 
   
   
   
   
2. 检查实例的端口是否正确，并通过curl命令检查端口是否可用。 
   1. 单击实例名称，在基本信息页面查看当前实例的端口信息。
      图3查看实例端口   
      ![](https://support.huaweicloud.com/trouble-dds/zh-cn_image_0000001222836133.png) 
   
   2. 通过**curl** 命令确认端口是否可用，示例：
      **curl 192.168.** **1.6** **:8635**
      提示"It looks like you are trying to access MongoDB over HTTP on the native driver port."表示可以正常连接该IP地址，且8635端口可以正常通信。
      图4回显信息   
      ![](https://support.huaweicloud.com/trouble-dds/zh-cn_image_0000001176718330.png) 
   
   
   
   
 
#### 处理方法
- 选择和DDS实例处于同一个区域、VPC和子网的ECS进行连接。或者可以绑定弹性公网IP，通过公网连接实例。
- 确保输入的端口信息和控制台查看的实际端口信息一致。
 
#### 背景知识
- 内网连接实例时，需要ECS与待连接的DDS实例的区域、VPC子网和安全组需要一致。
- 内网无法连接实例时，也可以绑定弹性公网IP，通过公网方式连接实例。
 
