Я использую библиотеку https://github.com/rapid7/smbj-rpc для получения общих каталогов smb для всех компьютеров в локальной сети. Сейчас мне нужно обработать сеть, где на каждом компьютере есть локальные учетные записи пользователей (нет активной директории). Но в будущем мне также нужно сделать это общим: -
а) для определения того, находится ли данный IP-адрес в рабочей группе или домене, и
б) получить правильное значение значения домена, которое будет использоваться для аутентификации.
Итак, я ищу информацию выше и как получить ее с помощью Java. Пример фрагмента ниже:
final SMBClient smbClient = new SMBClient();
Session session = null;
RPCTransport transport;
try (final Connection smbConnection = smbClient.connect(ip)) {
final AuthenticationContext smbAuthenticationContext = new AuthenticationContext(user,
password.toCharArray(), "what_domain_to_pass\\?");
session = smbConnection.authenticate(smbAuthenticationContext);
Я пробовал стандартный Java API:
InetAddress inetAddress = InetAddress.getByName(ip);
String hostName = inetAddress.getHostName();
но я не уверен, что это правильный путь.