Как получить доступ к веб-серверу или веб-сайту, используя локальный IPv6-адрес ссылки?

Ниже приведен вывод ipconfig компьютера, на котором размещен веб-сервер:

Ethernet-адаптер Local Area Connection:

DNS-суффикс для конкретного подключения.: Link-local IPv6 Address .,,,,: fe80::f85b:4256:ee76:24a4%11 IPv4-адрес.,,,,,,,,,,: 10.213.254.119 Маска подсети.,,,,,,,,,,: 255.255.255.0 Шлюз по умолчанию.,,,,,,,,: 10.213.254.252

Я могу получить доступ к веб-сайту с помощью, скажем, " http://10.213.254.119/test" Теперь мне интересно узнать, как я могу получить доступ к той же странице, используя локальный IPv6-адрес ссылки?

3 ответа

Я обнаружил, что большинство браузеров не поддерживают идентификаторы области в URL. Поскольку идентификаторы области обычно требуются для локальных адресов ссылок, это означает, что эти браузеры не могут получить доступ к локальным адресам ссылок. Создание записи DNS, указывающей на локальный адрес ссылки, также не будет работать, поскольку запись DNS не может указывать идентификатор области.

Иногда мне нужно было получить доступ к веб-интерфейсу оборудования, которое не было даже по той же ссылке. Это означает, что у меня будет два препятствия, мешающих мне использовать локальный адрес для доступа к нему. Но я нашел простой метод, который решил обе эти проблемы для меня.

Запустите ssh-клиент на хосте, на котором работает браузер. Подключитесь к хосту с прямой ссылкой на оборудование, к которому я хочу получить доступ через локальный адрес канала, и настройте переадресацию портов. Например, команда для этого может выглядеть так:

ssh -L '8080:[fe80::2bb:c9ff:fe44:36b6%eth0]:80' host.example.com

На данный момент я могу получить к нему доступ через localhost, который не требует идентификатора области видимости: http://[::1]:8080/, Это, конечно, также работает, если ssh-клиент и ssh-сервер работают на одной машине с веб-браузером.

Вы можете получить к нему доступ с помощью curl как:

curl -6 -g --interface eth0 "http://[e80::f85b:4256:ee76:24a4]:8080" -vvv

Большинство браузеров не поддерживают это, и даже если бы они сделали это, вам пришлось бы использовать URL-адрес, как http://[fe80::f85b:4256:ee76:24a4%eth0]/ где eth0 является идентификатором ссылки в клиентской системе и может быть разным для каждого клиента.

Лучше использовать маршрутизируемый адрес IPv6.

Другие вопросы по тегам