Сеть недоступна - MSSQL
Я пытаюсь подключиться удаленно к серверу sql 2008.
Я могу установить соединение с локальным IP-адресом (я делаю это с терминала в операционной системе Linux, подключенной к локальной сети, используя freetds), и все работает.
Я пытаюсь получить доступ к базе данных из совершенно отдельной системы, не подключенной к локальной сети. Я пытаюсь (и не могу) подключиться к серверу, когда пытаюсь получить к нему доступ по общедоступному IP-адресу, который я получаю отсюда (Диспетчер конфигурации SQL Server-> Конфигурация сети SQL Server -> Протоколы для SQLEXPRESS -> TCP/IP) - фото иллюстративное, в моей системе включен ip:
Когда я пытаюсь пинговать его, используя ping6 <my_ip> 1433
Я получаю следующую ошибку:
connect: Network is unreachable
Вот некоторая полезная информация:
- Удаленные подключения разрешены на сервере.
- TCP / IP включен
- Конкретный IP-адрес включен и активен в диспетчере конфигурации SQL Server, а для порта TCP установлено значение 1433.
- Я добавил исключение в брандмауэр для TCP с портом 1433 и всеми сетями.
- Я также добавил исключение брандмауэра для sqlservr.exe
Есть идеи?
Изменить: Хорошо, поскольку используемый мной IPv6 не является правильным IP-адресом (как указано, он локальный, а не общедоступный), как я могу получить правильный IP-адрес для подключения? Я искал об этом, но все, что я получил, это как найти некоторые локальные IP-адреса.
2 ответа
fe80:: это локальный IPv6-адрес, так что это не публичный IP. Они могут использоваться в сети, но не через маршрутизаторы.
Так что, если вы используете fe80::... IP, я уверен, что он не тот, который нужно использовать.
Ах, это тоже не имеет большого смысла:
ping6
1433
потому что пинг не знает о портах. Попробуйте использовать
$ telnet -6
вместо этого, если вы хотите проверить TCP-соединение.
Что касается сообщения об ошибке
подключиться: сеть недоступна
вы также получите это сообщение, если ваш клиентский хост не имеет подключения к IPv6.
Попробуйте это на вашем клиенте
$ telnet -6 google.com 80
и посмотреть, если вы получаете соединение или если вы получаете сеть недоступна.
Кажется, вы без маршрута по умолчанию.
Проверьте это с
# ip -6 route
Вы должны увидеть что-то вроде этого:
default via 2801:95:1f0:::1 dev bond0 metric 1 mtu 1500 advmss 1440 hoplimit 4294967295
Теперь вы можете пропинговать этот IP-адрес (шлюз по умолчанию) и проверить локальное подключение ipv6. Если ваш маршрут по умолчанию является локальным адресом (fe80::), вам нужно указать -I на ping6, чтобы указать используемое устройство Ethernet.
Это нормально попытаться
tracepath6 www.google.com
чтобы проверить, где вы остановились.