Подключение к Azure SQL Server с компьютера с динамическим внешним IP-адресом
Я пытаюсь подключить локальный ноутбук с динамическим внешним IP-адресом к нашему Azure SQL Server. Для этого я создал шлюз виртуальной сети и подключил к нему ноутбук. Кроме того, я добавил к серверу SQL частную конечную точку. После этого я могу успешно подключиться к IP-адресу SQL-сервера с помощью telnet, и если я разрешу FQDS SQL-сервера в файле hosts, я могу подключиться к серверу через SSMS. Но без файла hosts портативный компьютер всегда пытается подключиться к серверу SQL через его общедоступную конечную точку / адрес.
Я нашел следующую статью: https://techcommunity.microsoft.com/t5/azure-database-support-blog/azure-sql-db-private-link-private-endpoint-connectivity/ba-p/1235573 Эта статья отличный. Он рекомендует использовать собственный DNS-сервер для преобразования полного доменного имени SQL-сервера в локальный IP-адрес. К сожалению, у ноутбука нет доступа ни к одному настраиваемому DNS, поэтому такое решение не подходит. Есть два вопроса:
Есть ли возможность установить соединение между локальным компьютером с динамическим IP-адресом и сервером SQL Azure с использованием частной конечной точки, но без собственного DNS-сервера?
Если ответ на первый вопрос - "Нет", существует ли другой способ подключить локальный компьютер с динамическим IP-адресом к серверу SQL Azure с помощью любого другого приложения (приложений) Azure?
1 ответ
Прежде всего, вы не можете использовать полное доменное имя без службы DNS. Таким образом, вам действительно нужен настраиваемый DNS-сервер для использования полного доменного имени сервера в строках подключения, чтобы ваши клиенты могли подключаться с локальной виртуальной машины к серверу SQL Azure.
Поскольку вы используете портативный компьютер, DNS-серверы, используемые вашим компьютером, скорее всего, указаны вашим интернет-провайдером. У вас больше нет контроля над этим или попросите своего интернет-провайдера настроить DNS-сервер пересылки. В противном случае вам необходимо развернуть DNS-сервер во внутренней сети. В настоящее время в этом сценарии лучший метод - использовать файл HOSTS на локальном компьютере для переопределения общедоступного DNS.
Однако, если вам не нравится использовать файл HOSTS, вы можете подготовить виртуальную машину Azure в качестве DNS-сервера в той же виртуальной сети Azure, что и шлюз виртуальной сети.
Основные шаги:
Разверните виртуальную машину Azure и RDP на этой виртуальной машине и выполните команды PowerShell, чтобы установить роль DNS-сервера.
Install-WindowsFeature -Name DNS -IncludeManagementTools Get-WindowsFeature *DNS*
Добавить Azure DNS (
168.63.129.16
) в качестве сервера пересылки на вашем настраиваемом DNS-сервере в соответствии с шагом 5 в этом блоге. Если вы не хотите использовать пересылку, вы также можете создатьforward lookup zone
и вручную добавил хост, соответствующий FQDN. Вы можете прочитать о локальных рабочих нагрузках с использованием DNS-сервера пересылки для получения дополнительных сведений.После настройки DNS-сервера и настройки DNS-сервера пересылки. Вы можете изменить DNS-сервер виртуальной сети Azure на частный IP-адрес виртуальной машины Azure.
Перезагрузите виртуальную машину Azure, повторно загрузите пакет VPN-клиента и повторно подключите VPN-соединение, чтобы выполнить сетевое обновление. Проверьте DNS-сервер на локальном компьютере клиента VPN и установите DNS-сервер на настраиваемый DNS-сервер в настройках TCP/IP. Затем вы будете искать свой частный IP-адрес через полное доменное имя службы Azure по умолчанию.
В моем примере я использую учетную запись хранения Azure, но она работает так же с базой данных SQL Azure при использовании частной конечной точки в подключении Azure и P2S VPN. Таким образом, требуется, чтобы на локальном компьютере не было никаких других VPN-подключений, кроме VPN-подключения P2S.
Затем вы можете разрешить полное доменное имя сервера SQL Azure в частный IP-адрес частной конечной точки. Однако он, возможно, не имеет лучшей производительности для подключения к Azure SQL Server с помощью VPN-подключения, чем прямое подключение к нему через общедоступный Интернет и общедоступную службу DNS.