6

Если я хочу узнать, как называется имя хоста удаленной машины Linux в моей локальной сети, как я могу добиться этого, если у меня нет доступа через SSH и т.д.?

Вероятно, зависит, если Linux является частью домена WINS, я полагаю.

3 ответа3

5

Вы должны были бы указать термин имя хоста более подробно. Если вы ищете имя, которое известно DNS-серверу, которое вы не хотите использовать - нет способа узнать, кроме как фактически запросить этот DNS-сервер.

Если вы просто угадываете, nmap может быть полезным. Например, если на этом сервере запущен smbd, вывод nmap -A может выглядеть так:

Host script results:
| smb-security-mode:
|   Account that was used for smb scripts: guest
|   User-level authentication
|   SMB Security: Challenge/response passwords supported
|_  Message signing disabled (dangerous, but default)
|_smbv2-enabled: Server doesn't support SMBv2 protocol
|_nbstat: NetBIOS name: FOOBAR, NetBIOS user: <unknown>, NetBIOS MAC: <unknown>
| smb-os-discovery:
|   OS: Unix (Samba 3.5.6)
|   Computer name: foobar
|   Domain name: lan
|   FQDN: foobar.lan
|   NetBIOS computer name:
|_  System time: 2013-03-14 17:02:27 UTC+1

Другие службы также могут дать подсказки о названии машины.

2

При отсутствии DNS-сервера это может работать:

traceroute 1.2.3.4

В качестве альтернативы, если рассматриваемый сервер экспортирует общие ресурсы Samba, вы можете сделать это:

smbclient -L 1.2.3.4

Это зависит от того, настроен ли в вашей сети работающий DNS-сервер с необходимой информацией. Если это так, эта команда должна делать то, что вам нужно:

nslookup 1.2.3.4

или же

host 1.2.3.4

Наконец, еще одна полезная команда

arp -a
2

Fingerd (и xinetd) просты в настройке и не требуют обслуживания.

$ finger root@10.3.0.3
[10.3.0.3:79]

Welcome to Linux version 3.5.7-12-tryggve at tryggve.lan !
(...)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .