Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Доступ к MS SQL server express через интернет.  [new]
AlVM
Member

Откуда:
Сообщений: 41
Понадобилось мне каким-то образом получить доступ к домашнему MS SQL Server Express 2016 через интернет.
Схема домашней сети такая: есть роутер ZyXEL Keenetic (FW v.2), который поднимает сессию PPPoE и раздает инет через езернет и файфай. К роутеру по езернет подключен комп, на котором крутится SQL сервер (192.168.1.2).
Что я сделал:
Включил в сервере протокол TCP/IP и настроил порты. В логах получил следующую инфу:
Server is listening on [ 'any' <ipv6> 11433].
Server is listening on [ 'any' <ipv4> 11433].
Server is listening on [ 'any' <ipv6> 53250].
Server is listening on [ 'any' <ipv4> 53250].
Server local connection provider is ready to accept connection on [ \\.\pipe\SQLLocal\SQLEXPRESS ].
Server local connection provider is ready to accept connection on [ \\.\pipe\MSSQL$SQLEXPRESS\sql\query ].
11433 - это статический порт.
53250 - динамический.
На роутере поднят динамический ДНС NAME.ddns.net. Настроен проброс портов:
Сеть Исходный адрес Порт Назначение Порт назначения Описание

PPPoE0 tcp/1433 192.168.1.2 11433 MSSQL
PPPoE0 udp/1433 192.168.1.2 11433 MSSQL(UDP)
PPPoE0 tcp/53250 192.168.1.2 53250 MSSQL_53250
PPPoE0 udp/53250 192.168.1.2 53250 MSSQL_53250(UDP)
Открыл порты в файрвол.
Сканер портов, показывает что порт открыт, пинг по доменному имени - проходит, веб морда через интернет - поднимается.
Пытаюсь прицепится к SQL с удаленного компьютера, выдает код 0 таймаут. С локального компьютера, при той-же строке подключения, соединяется. Файрвол в ОС - выключен.
Строка подключения: NAME.ddns.net\SQLEXPRESS,11433
Что я делаю не так и как поправить?
25 сен 17, 18:02    [20821550]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
AlVM,

как проверяли что порт доступен из инета?
telnet ipadress 11433 что показывает?

Какой еще динамический порт? нет такого в скуле, лог полностью покажите, а не вашу вольную интерпретацию.
25 сен 17, 19:00    [20821683]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
AlVM
Member

Откуда:
Сообщений: 41
Пример лога:
+
Date	Message
18.09.2017 20:45:04	Microsoft SQL Server 2016 (SP1-GDR) (KB4019089) - 13.0.4206.0 (X64) 
	Jul  6 2017 07:55:03 
	Copyright (c) Microsoft Corporation
	Express Edition (64-bit) on Windows 10 Enterprise 6.3 <X64> (Build 15063: )
18.09.2017 20:45:04	UTC adjustment: 5:00
18.09.2017 20:45:04	(c) Microsoft Corporation.
18.09.2017 20:45:04	All rights reserved.
18.09.2017 20:45:04	Server process ID is 20044.
18.09.2017 20:45:04	System Manufacturer: 'ASUS', System Model: 'All Series'.
18.09.2017 20:45:04	Authentication mode is MIXED.
18.09.2017 20:45:04	Logging SQL Server messages in file 'C:\Program Files\Microsoft SQL Server\MSSQL13.SQLEXPRESS\MSSQL\Log\ERRORLOG'.
18.09.2017 20:45:04	The service account is 'NT Service\MSSQL$SQLEXPRESS'. This is an informational message; no user action is required.
18.09.2017 20:45:04	Registry startup parameters: 
	 -d C:\Program Files\Microsoft SQL Server\MSSQL13.SQLEXPRESS\MSSQL\DATA\master.mdf
	 -e C:\Program Files\Microsoft SQL Server\MSSQL13.SQLEXPRESS\MSSQL\Log\ERRORLOG
	 -l C:\Program Files\Microsoft SQL Server\MSSQL13.SQLEXPRESS\MSSQL\DATA\mastlog.ldf
18.09.2017 20:45:04	Command Line Startup Parameters:
	 -s "SQLEXPRESS"
18.09.2017 20:45:04	SQL Server detected 1 sockets with 4 cores per socket and 4 logical processors per socket, 4 total logical processors; using 4 logical processors based on SQL Server licensing. This is an informational message; no user action is required.
18.09.2017 20:45:04	SQL Server is starting at normal priority base (=7). This is an informational message only. No user action is required.
18.09.2017 20:45:04	Detected 8129 MB of RAM. This is an informational message; no user action is required.
18.09.2017 20:45:04	Using conventional memory in the memory manager.
18.09.2017 20:45:04	Default collation: Cyrillic_General_CI_AS (русский 1049)
18.09.2017 20:45:04	Buffer pool extension is already disabled. No action is necessary. 
18.09.2017 20:45:04	InitializeExternalUserGroupSid failed. Implied authentication will be disabled.
18.09.2017 20:45:04	Implied authentication manager initialization failed. Implied authentication will be disabled.
18.09.2017 20:45:04	The maximum number of dedicated administrator connections for this instance is '1'
18.09.2017 20:45:04	This instance of SQL Server last reported using a process ID of 12452 at 18.09.2017 20:44:56 (local) 18.09.2017 15:44:56 (UTC). This is an informational message only; no user action is required.
18.09.2017 20:45:04	Node configuration: node 0: CPU mask: 0x000000000000000f:0 Active CPU mask: 0x000000000000000f:0. This message provides a description of the NUMA configuration for this computer. This is an informational message only. No user action is required.
18.09.2017 20:45:04	Using dynamic lock allocation.  Initial allocation of 2500 Lock blocks and 5000 Lock Owner blocks per node.  This is an informational message only.  No user action is required.
18.09.2017 20:45:04	Database Instant File Initialization: отключено. For security and performance considerations see the topic 'Database Instant File Initialization' in SQL Server Books Online. This is an informational message only. No user action is required.
18.09.2017 20:45:04	Query Store settings initialized with enabled = 1, 
18.09.2017 20:45:04	Starting up database 'master'.
18.09.2017 20:45:04	SQL Server Audit is starting the audits. This is an informational message. No user action is required.
18.09.2017 20:45:04	SQL Server Audit has started the audits. This is an informational message. No user action is required.
18.09.2017 20:45:04	SQL Trace ID 1 was started by login "sa".
18.09.2017 20:45:04	Server name is 'AVM\SQLEXPRESS'. This is an informational message only. No user action is required.
18.09.2017 20:45:04	A self-generated certificate was successfully loaded for encryption.
18.09.2017 20:45:04	Server is listening on [ 'any' <ipv6> 11433].
18.09.2017 20:45:04	Server is listening on [ 'any' <ipv4> 11433].
18.09.2017 20:45:04	Server is listening on [ 'any' <ipv6> 53250].
18.09.2017 20:45:04	Server is listening on [ 'any' <ipv4> 53250].
18.09.2017 20:45:04	Server local connection provider is ready to accept connection on [ \\.\pipe\SQLLocal\SQLEXPRESS ].
18.09.2017 20:45:04	Server local connection provider is ready to accept connection on [ \\.\pipe\MSSQL$SQLEXPRESS\sql\query ].
18.09.2017 20:45:04	Dedicated administrator connection support was not started because it is disabled on this edition of SQL Server. If you want to use a dedicated administrator connection, restart SQL Server using the trace flag 7806. This is an informational message only. No user action is required.
18.09.2017 20:45:04	SQL Server is attempting to register a Service Principal Name (SPN) for the SQL Server service. Kerberos authentication will not be possible until a SPN is registered for the SQL Server service. This is an informational message. No user action is required.
18.09.2017 20:45:04	SQL Server is now ready for client connections. This is an informational message; no user action is required.
18.09.2017 20:45:04	The SQL Server Network Interface library could not register the Service Principal Name (SPN) [ MSSQLSvc/AVM:SQLEXPRESS ] for the SQL Server service. Windows return code: 0xffffffff, state: 63. Failure to register a SPN might cause integrated authentication to use NTLM instead of Kerberos. This is an informational message. Further action is only required if Kerberos authentication is required by authentication policies and if the SPN has not been manually registered.
18.09.2017 20:45:04	The SQL Server Network Interface library could not register the Service Principal Name (SPN) [ MSSQLSvc/AVM:11433 ] for the SQL Server service. Windows return code: 0xffffffff, state: 63. Failure to register a SPN might cause integrated authentication to use NTLM instead of Kerberos. This is an informational message. Further action is only required if Kerberos authentication is required by authentication policies and if the SPN has not been manually registered.
18.09.2017 20:45:04	CLR version v4.0.30319 loaded.
18.09.2017 20:45:04	A new instance of the full-text filter daemon host process has been successfully started.
18.09.2017 20:45:04	Common language runtime (CLR) functionality initialized using CLR version v4.0.30319 from C:\Windows\Microsoft.NET\Framework64\v4.0.30319\.
18.09.2017 20:45:04	Starting up database 'msdb'.

С локальной машины телнет сессию сбрасывает, с удаленной - таймаут выдает.
25 сен 17, 19:33    [20821738]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
AlVM
Member

Откуда:
Сообщений: 41
Настройки1:

К сообщению приложен файл. Размер - 57Kb
25 сен 17, 19:37    [20821747]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
AlVM
Member

Откуда:
Сообщений: 41
Настройки2:

К сообщению приложен файл. Размер - 60Kb
25 сен 17, 19:37    [20821750]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
автор
С локальной машины телнет сессию сбрасывает, с удаленной - таймаут выдает.


ну и вас это не наводит на мысль что надо смотреть конфигурацию сети и всего сетевого оборудования, чего вы с скуле то пытаетесь найти волшебную кнопку.
Добивайтесь того чтобы команда telnet ip 11433 открывала соединение.
Проверяйте как порт прокинут, фареволы, роутеры, dmz и прочие сетевые функции.
с точки зрения скуля порт открыт, дальше его полномочия как говориться всё.
25 сен 17, 19:49    [20821765]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
Col
Member

Откуда: Торонто
Сообщений: 180
AlVM,
Вот так подключится:
NAME.ddns.net,11433
Лень и долго обьяснять, если коротко то для подключения по динамике, а именованный инстанс это динамика, нужен еще порт 1434 UDP и запущенный броузер.
Проще подключаться как я показал выше, это подключит к статическому порту, хотя можно и динамический тоже исползовать.
25 сен 17, 20:41    [20821860]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
invm
Member

Откуда: Москва
Сообщений: 9350
AlVM
PPPoE0 tcp/1433 192.168.1.2 11433 MSSQL
AlVM
Строка подключения: NAME.ddns.net\SQLEXPRESS,11433

Вы пробросили 1433 внешний на 11433 внутренний, затем снаружи пытаетесь соединиться на 11433 и почему-то думаете, что это должно работать.
25 сен 17, 20:56    [20821878]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
komrad
Member

Откуда:
Сообщений: 5245
Col
...а именованный инстанс это динамика, ...

справедливости ради, это не всегда так

в абстрактном случае, что мешает назначить инстансу порт, отличный от 1433, и подключаться к сиквелу по имени инстанса, при запущенном SQL Browser?
25 сен 17, 21:29    [20821931]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
Col
Member

Откуда: Торонто
Сообщений: 180
komrad,
Я ж и говорю, долго, лениво и в данном случае скорее всего не нужно :)
25 сен 17, 22:23    [20822042]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
AlVM
Member

Откуда:
Сообщений: 41
Прописал у SQL сервера стандартный порт 1433, перезапустил, служба "Обозреватель SQL Server" - запущена.
В роутере пробросил порты 1433(TCP), 1434(UDP).
Пробовал и так: NAME.ddns.net,1433 и с указанием экземпляра, и по динамическому адресу - не пускает, и все.
26 сен 17, 07:15    [20822344]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
AlVM
Member

Откуда:
Сообщений: 41
На локальной машине все четыре строки подключения работают.
26 сен 17, 07:23    [20822349]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
AlVM
Member

Откуда:
Сообщений: 41
Чтобы проверить связь, поднял вебморду на uTorrent и пробросил порт (настраивал на 1010) - результат положительный с удаленной машины заходит и работает. Почему не работает MS SQL?
26 сен 17, 08:59    [20822459]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
KohrAhr
Member

Откуда:
Сообщений: 43
MS SQL Express edition традиционно (с первой версии -- 2005) не предусматривает удалённого соединения.
или в 2016 express что-то изменилось?
26 сен 17, 09:17    [20822516]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
komrad
Member

Откуда:
Сообщений: 5245
KohrAhr
MS SQL Express edition традиционно (с первой версии -- 2005) не предусматривает удалённого соединения.

всё предусматривает, надо только протокол TCP/IP включить
26 сен 17, 09:34    [20822565]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
komrad
Member

Откуда:
Сообщений: 5245
AlVM
Чтобы проверить связь, поднял вебморду на uTorrent и пробросил порт (настраивал на 1010) - результат положительный с удаленной машины заходит и работает. Почему не работает MS SQL?


на локальной машине проверить подключаемость по TCP/IP используя sqlcmd вот так:
sqlcmd -S tcp:сервер\инстанс -E 
, если у вас аутентификация сиквельная, то вместо -Е использовать -U и -P

снаружи попытаться подключиться только по имени хоста или IP И номеру порта

не исключаю вероятности того, что стандартные порты типа TCP1433 режет/фильтрует ваш провайдер
26 сен 17, 09:37    [20822574]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
AlVM
Member

Откуда:
Сообщений: 41
komrad

на локальной машине проверить подключаемость по TCP/IP используя sqlcmd вот так:
sqlcmd -S tcp:сервер\инстанс -E 
, если у вас аутентификация сиквельная, то вместо -Е использовать -U и -P

снаружи попытаться подключиться только по имени хоста или IP И номеру порта

не исключаю вероятности того, что стандартные порты типа TCP1433 режет/фильтрует ваш провайдер

Если без указания порта - то выдает Sqlcmd: ошибка - Microsoft ODBC Driver 13 for SQL Server: Сетевые интерфейсы SQL Server: Не удается обнаружить указанный сервер/экземпляр [xFFFFFFFF]. .
Если с портом, то: Sqlcmd: ошибка - Microsoft ODBC Driver 13 for SQL Server: Поставщик TCP: Время ожидания операции истекло.
.
26 сен 17, 09:44    [20822598]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
AlVM
Member

Откуда:
Сообщений: 41
Пробовал пробрасывать 80 порт - тоже самое.
26 сен 17, 09:47    [20822609]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31366
AlVM
Прописал у SQL сервера стандартный порт 1433, перезапустил, служба "Обозреватель SQL Server" - запущена.
В роутере пробросил порты 1433(TCP), 1434(UDP).

И что, в логах сиквела написано, что он слушает 1433?
С локальной машины теперь вы подключаетесь по TCP 1433?
AlVM
Пробовал пробрасывать 80 порт - тоже самое.
Не пробрасывайте ничего, отладьте подключение сначала на сервере.
26 сен 17, 09:53    [20822638]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
komrad
Member

Откуда:
Сообщений: 5245
AlVM
Чтобы проверить связь, поднял вебморду на uTorrent и пробросил порт (настраивал на 1010) - результат положительный с удаленной машины заходит и работает. Почему не работает MS SQL?


где поднимали web для uTorrent?
на роутере или на хосте с сиквелом?
26 сен 17, 09:53    [20822639]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
AlVM
Member

Откуда:
Сообщений: 41
komrad
AlVM
Чтобы проверить связь, поднял вебморду на uTorrent и пробросил порт (настраивал на 1010) - результат положительный с удаленной машины заходит и работает. Почему не работает MS SQL?


где поднимали web для uTorrent?
на роутере или на хосте с сиквелом?

На компе с сиквелом - есно.
26 сен 17, 10:10    [20822689]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
AlVM
Member

Откуда:
Сообщений: 41
alexeyvg
AlVM
Прописал у SQL сервера стандартный порт 1433, перезапустил, служба "Обозреватель SQL Server" - запущена.
В роутере пробросил порты 1433(TCP), 1434(UDP).

И что, в логах сиквела написано, что он слушает 1433?
С локальной машины теперь вы подключаетесь по TCP 1433?
AlVM
Пробовал пробрасывать 80 порт - тоже самое.
Не пробрасывайте ничего, отладьте подключение сначала на сервере.

На локальном компе - строка подключения NAME.ddns.net,80 - отрабатывает нормально.
26 сен 17, 10:13    [20822695]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
Dmitry V. Liseev
Member [заблокирован]

Откуда: Санкт-Петербург
Сообщений: 5490
Не понятно, зачем IPv6 включено, пайпы и прочее. Я включал статический IPv4 адрес. Пробрасывал через NAT только TCP на 1433 порт сервера. Никаких UDP и браузеров не надо. Всё работало. Что мешает поставить вайршарк и посмотреть пакеты?
26 сен 17, 10:18    [20822711]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
AlVM
Member

Откуда:
Сообщений: 41
Попробую посмотреть с другого компа.
26 сен 17, 10:22    [20822734]     Ответить | Цитировать Сообщить модератору
 Re: Доступ к MS SQL server express через интернет.  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31366
AlVM
alexeyvg
пропущено...

И что, в логах сиквела написано, что он слушает 1433?
С локальной машины теперь вы подключаетесь по TCP 1433?
пропущено...
Не пробрасывайте ничего, отладьте подключение сначала на сервере.

На локальном компе - строка подключения NAME.ddns.net,80 - отрабатывает нормально.
Это что такое, "NAME.ddns.net,80", как вы эту строку используете, и вообще, что за формат?

sqlcmd -S tcp:сервер\инстанс -E на сервере работает?
Вот когда заработает, значит, ваш сиквел настроен на подключение по протоколу tcp, используя броузер для получения порта.
Или так, если хотите указать номер порта, не связываясь с броузером:
sqlcmd -S tcp:сервер\инстанс, номер порта -E
Номер порта смотрите в сиквельных логах, заодно проверяя, слушает ли сиквел tcp

А дальше уже можно начинать возиться с файрволлами, роутерами и т.д.
26 сен 17, 10:27    [20822757]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить