Можно ли использовать адрес IPv6 для подключения к удалённому ресурсу?

Вопрос или проблема

Можно использовать как UNC, так и IPv4-адрес для подключения к общему каталогу на удаленной машине с помощью net use, например:

net use \\remotePC\SharedFolder     // корректно
net use \\111.122.1.1\SharedFolder  // корректно

Возможно ли подключиться с помощью IPv6-адреса? Это что-то, что нужно настраивать отдельно, но технически возможно? Если я указываю IPv6-адрес, я получаю ошибку 53:

Сетевой путь не найден.

Причина, по которой я спрашиваю, заключается в том, что одна из моих программ принимает местоположение удаленного общего каталога в качестве входного параметра – мне нужно оценить, является ли местоположение корректным. Я знаю, что оно корректно, если это UNC-путь или IPv4-адрес, но не уверен, следует ли разрешить IPv6 или это просто приведет к ошибке.

Как задокументировано в Microsoft:

Например, для следующего IPv6-адреса:

2001:4898:9:3:c069:aa97:fe76:2449

пример общего доступа может выглядеть следующим образом:

\\2001-4898-9-3-c069-aa97-fe76-2449.ipv6-literal.net\share

Для получения дополнительной информации см.: Как создать UNC для IPv6-адреса?


Также обратите внимание, что, что странно, Microsoft на самом деле не владеет этим доменным именем, и реальный владелец неизвестен. Хотя Windows не должен отправлять такие запросы в сеть, все же существует вероятность утечки, если такой литерал будет повторно использован в других контекстах. Вам будет разумно настроить DNS для вашей сети.

Вам нужно преобразовать IPv6-адрес в буквальный адрес IPv6. Этот сайт выполнит преобразование http://ipv6-literal.com/, а сайт ниже является моим источником, если вам нужны дополнительные детали. http://social.technet.microsoft.com/Forums/windowsserver/en-US/d61f8efe-c9a7-4fd7-a7e9-f936c2154c54/net-command-with-ipv6-address?forum=winserverManagement

Команда будет выглядеть примерно так: net use x: \fe80-0-0-0-a0b6-99c9-2f6c-5759.ipv6-literal.net\admin$ /u:administrator adminpassword

Вы также можете настроить запись IPv6 для хоста (windows\system32\drivers\etc\hosts) и подключиться к SMB-общему ресурсу, используя имя хоста.

Сработало как по волшебству, сэр.

Жаль, что это не так просто, как с IPv6. Windows всегда делает это дерьмо.

\2001-4898-9-3-c069-aa97-fe76-2449.ipv6-literal.net\share будет ли это также работать в файловом менеджере Linux для доступа к SMB через IPv6?

Ответ или решение

Да, возможно использовать адрес IPv6 для подключения к общему ресурсу на удаленной машине. Однако для этого следует учитывать несколько ключевых моментов:

  1. Формат адреса: В отличие от адресов IPv4, которые можно использовать непосредственно, адреса IPv6 требуют особого форматирования при подключении через UNC (Universal Naming Convention). Например, вместо прямого указания IP адреса, необходимо преобразовать его в литеральный адрес IPv6. В вашем случае, это будет выглядеть так:

    \\2001-4898-9-3-c069-aa97-fe76-2449.ipv6-literal.net\SharedFolder

    Важно понимать, что Microsoft ограничивает использование IPv6 адресов в сетевых командах, поэтому использование доменного имени, представляющего адрес, является обязательным.

  2. Конфигурация сети: Перед использованием IPv6 необходимо убедиться, что поддержка IPv6 включена и корректно настроена как на клиенте, так и на сервере. Это включает в себя корректную настройку маршрутизации и DNS, чтобы обеспечить, что пакеты смогут успешно передаваться через сеть.

  3. Проверка подключения: Если при попытке подключения по IPv6 возникает ошибка 53 ("Путь сети не найден"), это может быть связано с неправильной формой адреса либо с конфигурацией самой сети. Как упоминалось выше, необходимо убедиться, что адрес правильно конвертирован в литеральный формат.

  4. Сетевые настройки: Вы также можете создать записи в файле hosts, расположенном по адресу C:\Windows\System32\drivers\etc\hosts, чтобы привязать доменное имя к IPv6 адресу, что упростит процесс подключения.

  5. Применимость в разных ОС: При использовании Linux для подключения к SMB-сетям через IPv6, вы также можете применить аналогичные принципы. Например, можно использовать команду smbclient с форматом IPv6 адреса в литературном виде. Это подразумевает, что вы можете использовать адреса в формате, аналогичном описанному выше.

В заключение, да, существует возможность подключения к общим ресурсам через IPv6, но значительно важно правильно настроить сеть и использовать правильный формат адреса. Это будет полезно для обеспечения функциональности вашей программы. Рекомендуется разрешить использование IPv6 в вашем окружении, чтобы поддерживать современные стандартные связи в сетевом взаимодействии.

Оцените материал
Добавить комментарий

Капча загружается...