SQL — Query to get server's IP address
Is there a query in SQL Server 2005 I can use to get the server’s IP or name?
12 Answers 12
The code here Will give you the IP Address;
This will work for a remote client request to SQL 2008 and newer.
If you have Shared Memory connections allowed, then running above on the server itself will give you
- «Shared Memory» as the value for ‘net_transport’, and
- NULL for ‘local_net_address’, and
- ‘ <local machine> ‘ will be shown in ‘client_net_address’.
‘client_net_address’ is the address of the computer that the request originated from, whereas ‘local_net_address’ would be the SQL server (thus NULL over Shared Memory connections), and the address you would give to someone if they can’t use the server’s NetBios name or FQDN for some reason.
I advice strongly against using this answer. Enabling the shell out is a very bad idea on a production SQL Server.
You can get the[hostname]\[instancename] by:
To get only the hostname when you have hostname\instance name format:
Alternatively as @GilM pointed out:
You can get the actual IP address using this:
The server might have multiple IP addresses that it is listening on. If your connection has the VIEW SERVER STATE server permission granted to it, you can run this query to get the address you have connected to SQL Server:
This solution does not require you to shell out to the OS via xp_cmdshell, which is a technique that should be disabled (or at least strictly secured) on a production server. It may require you to grant VIEW SERVER STATE to the appropriate login, but that is a far smaller security risk than running xp_cmdshell.
The technique mentioned by GilM for the server name is the preferred one:
Most solutions for getting the IP address via t-sql fall into these two camps:
Run ipconfig.exe via xp_cmdshell and parse the output
Query DMV sys.dm_exec_connections
I’m not a fan of option #1. Enabling xp_cmdshell has security drawbacks, and there’s lots of parsing involved anyway. That’s cumbersome. Option #2 is elegant. And it’s a pure t-sql solution, which I almost always prefer. Here are two sample queries for option #2:
Sometimes, neither of the above queries works, though. Query #1 returns NULL if you’re connected over Shared Memory (logged in and running SSMS on the SQL host). Query #2 may return nothing if there are no connections using a non-Shared Memory protocol. This scenario is likely when connected to a newly installed SQL instance. The solution? Force a connection over TCP/IP. To do this, create a new connection in SSMS and use the «tcp:» prefix with the server name. Then re-run either query and you’ll get the IP address.
Как я могу узнать, какой IP-адрес отправил запрос к SQL Server?
Мне нужно четко видеть, какой IP-адрес сделал какой sql-запрос к SQL-серверу. Я пытаюсь использовать SQL Profiler, но, похоже, я не могу как-то различить машину (браузер), с которой пришел запрос. В нем есть только сведения о связи между веб-сервером и сервером sql. Есть ли у меня ЛЮБОЙ способ (любой неизвестный журнал?), Который позволит мне увидеть идентификацию исходной машины, с которой пришел запрос?
Спасибо за любое предложение.
хорошо .. да .. спасибо за подтверждение (если я не отправлю ip явно в db, нет возможности сказать). Спасибо вам. — HotFrost
6 ответы
Вы можете получить имя хоста текущего соединения или любую информацию из системные процессы таблицу
Очевидно, что это не сработает для получения IP-адреса веб-хостов, если это то, что вы ищете.
Как сказал @joshperry, вы можете получить адрес клиента и адрес сервера с помощью
Что касается SQL Server, запрос всегда будет поступать с вашего веб-сервера. Вам необходимо записать и зарегистрировать IP-адрес в своем веб-приложении.
ответ дан 08 мар ’17, в 10:03
Ваш ответ, безусловно, заслуживает небольшого пояснения. Пожалуйста, обратитесь к stackoverflow.com/help/how-to-answer . — Дж. Чомель
Хотя этот фрагмент кода приветствуется и может оказать некоторую помощь, он был бы значительно улучшился, если бы он включал объяснение of КАК и зачем это решает проблему. Помните, что вы отвечаете на вопрос для будущих читателей, а не только для человека, который задает его сейчас! Пожалуйста редактировать ваш ответ, чтобы добавить пояснение и указать, какие ограничения и допущения применяются. — Тоби Спейт
Если вы не пишете код в приложении для передачи адреса клиента с веб-сервера в базу данных, вам придется просматривать веб-журналы — они дадут IP-адрес клиента.
Как узнать имя своего сервера?
Если имя сервера неизвестно, его можно быстро определить, открыв в системе командную строку Windows, которая будет выполнять функции «Диспетчера сетевых лицензий». В командной строке введите ipconfig /all и просмотрите запись «Host Name».
Как узнать имя или адрес сервера?
КАК УЗНАТЬ АДРЕС VPN СЕРВЕРА?
- Нажать на клавиатуре + (Пуск+R)
- В появившейся строке набрать cmd и нажать Ok.
- В появившемся окне набрать ipconfig и нажать клавишу Enter.
- Для windows появится следующее
- адрес основного шлюза и будет адресом VPN сервера.
Как узнать имя своего сервера SQL?
Запустите классическое приложение Windows “Службы” на вашем компьютере и найдите в списке служб объект SQL Server. В скобках будет указано имя экземпляра. В этом же меню можно остановить, запустить и перезапустить экземпляр установленного Microsoft SQL Server.
Как узнать свое имя хоста?
Поиск с помощью командной строки (только Windows)
- Откройте окно командной строки, выбрав Пуск > (Все) Программы > Стандартные > Командная строка. Примечание. …
- Введите ipconfig /all и нажмите клавишу ENTER. Имя хоста отображается в верхней части в области Настройка протокола IP для Windows.
Как узнать имя сервера по IP адресу?
Узнать доменное имя по IP
- Открыть сервис WHOIS в удобном браузере;
- Ввести в верхнем окне адрес IP;
- Ниже в строке «хост» отобразится соответствующее имя сайта.
Как узнать есть ли у меня VPN?
Как мне узнать, работает ли мой VPN?
- Найдите ваш персональный IP-адрес, отключив ваш VPN и набрав в поисковой системе Google или Yandex запрос типа «узнать мой IP-адрес». …
- Перейдите в аккаунт вашего VPN-провайдера, авторизуйтесь, выберите требуемый VPN-сервер и подключитесь к нему.
Как определить IP адрес сервера?
Как узнать IP-адрес сайта с помощью утилиты dig
- Перейдите в раздел Проверка DNS-записей. Введите домен, по имени которого открывается ваш сайт, и выберите в выпадающем списке тип записи «А». …
- В столбце «Результат» вы увидите IP-адрес сайта IPv4:
Как узнать имя сервера базы данных MySQL?
Для того, чтобы узнать имя Вашего MySQL сервера на хостинге необходимо перейти в раздел «Хостинг» — «MySQL».
- На скриншоте это адрес «db6.ipipe.ru» …
- После того, как будет нажата кнопка «Применить», создастся новая база данных с соответствующим уведомлением:
Как узнать SQL Instance?
Чтобы получить имена экземпляров, перейдите в Start | Run | type Services. msc и найдите все записи с «Sql Server (Instance Name)».
Как узнать имя сервера Minecraft?
Чтобы узнать свой IP в Minecraft, можно использовать универсальные команды: ipconfig (нужно вводить в командной строке Windows) и ifconfig (в Linux).
Как узнать имя локального хоста?
Для этого нажмите комбинацию клавиш Windows-R и выполните команду «CMD» либо запустите командную строку любым другим удобным способом. В открывшемся окне командной строки нужно выполнить команду «hostname», после чего операционная система выведет текущее название системы в локальной сети.
Как узнать свое имя в сети?
Чтобы узнать имя компьютера по ip адресу в локальной сети необходимо в вашей операционной системе нажать пуск — выполнить, после чего напишите cmd. В открытом окне командной строки напишите команду ipconfig. Вывод этой команды покажет напротив поля желаемый ip-адрес компьютера.
Что означает имя хоста?
Имя хоста — это назначенная метка к устройству, подключенному к компьютеру сеть и которая используется для идентификации устройство в различных формах электронная связь, такая как Всемирная паутина, электронная почта или Usenet.
How to connect to a local SQL Server instance by IP Address in SQL Server Management Studio? [duplicate]
I’m writing some test code that is required to connect to a local SQL Server instance (SQL Server 2017 — Developer Edition) by IP address. I have the SQL Server instance up and running on my machine, but can’t figure out the correct IP + Port to use for my connection string’s Server property.
As a starting point, I’m trying to at least manually connect to my server instance with SQL Server Management Studio (via the IP address) but I can’t seem to figure it out.
- How do I find the IP Address and Port of my local SQL Server instance?
- What is the correct format I should be inputting the IP Address and Port into the Server Name field of SSMS (and is it the same format as a connection string Server property)?
I’ve tried locating the IP address executing the following SQL code on it:
But the local_net_address and local_tcp_port fields are NULL and the client_net_address is set to <local machine> : 
I’ve also tried going into the SQL Server Configuration Manager, under the SQL Server Network Configuration section, and enabling TCP/IP. Then I tried using a mix of the IP4 and IP6 addresses with Port 1433 (which is blank by default in the TCP/IP Properties, but I’ve tried leaving it blank and setting it to 1433) and that didn’t work.
(I made sure to restart the SQL Server service and SQL Server Browser service every time I made changes in here.)
I’ve received the following errors when trying to connect via SSMS for the different combinations of the IP4 address with and without Port specified:
No Port Specified:

Port Specified w/ Colon:

Port Specified w/ Comma: 
I’ve also tried connecting via 127.0.0.1 with the same combinations of Port 1433 above to no avail. (I receive similar errors except for the following combinations.)