Я хочу подключиться к удаленному серверу AzureDB (который имеет IP-адрес ip2 и имя хоста " ab c .database. windows. net") из мой локальный компьютер (который имеет IP-адрес ip1 ). Однако мой локальный хост не может напрямую получить доступ к серверу БД, поэтому для подключения мне пришлось использовать туннель S SH через сервер перехода (который имеет ip3 и может получить доступ к серверу AzureDB). Вот что я делал:
1, Создать S SH Туннель:
ssh -v -g -N -C -L local-port:**ip2**:1433 ssh-user@**ip3** -p 22
2, Подключиться к серверу БД
sqlcmd -S 127.0.0.1,local-port -U db-user@**abc**.database.windows.net -P password -d db-name
Но я получил ошибка:
Невозможно открыть сервер ' ab c', запрошенный при входе в систему. Клиент с IP-адресом ' ip1 ' не имеет доступа к серверу. Чтобы разрешить доступ, используйте портал управления Windows Azure или запустите sp_set_firewall_rule в базе данных master, чтобы создать правило брандмауэра для этого IP-адреса или диапазона адресов. Это вступление в силу может занять до пяти минут.
Я проверил туннельное соединение с te lnet, и ошибки не было обнаружено. Может кто-нибудь сказать мне, что не так с моей работой?