Назад | Перейти на главную страницу

Поддерживает ли Linux сопоставленные IPv4-адреса IPv4?

Я работаю в смешанной среде IPv4 / IPv6. Я читал, что адреса IPv4 можно сопоставить с пространством IPv6 с помощью этого синтаксиса

:: ffff: 1.2.3.4 (1.2.3.4 - это IPv4-адрес)

Поддерживает ли Linux эту нотацию? Все это не работает на моем сервере:

ping6 ::ffff:1.2.3.4 # to the server IP
ping6 ::ffff:127.0.0.1

Вместо того, чтобы использовать ping6, попробуйте ssh'ing ::ffff:127.0.0.1.

Я думаю, что конкретная ошибка здесь связана с ping6, а не сопоставленные адреса IP4.

Разве IPv4-адреса не отображают IPv6-адреса, фактически использующие IPv4, и, следовательно, не подходят для ping6?

В Linux есть опция сокета IPV6_V6ONLY, которая запрещает некоторым приложениям использовать сопоставленные адреса IPv4. Однако я думаю, что для ping6 конкретная проблема заключается в том, как это работает внутри компании.

это от netbsd, но я думаю, что это решает проблему.

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

Для двухпротокольных приложений это не проблема - они умеют переключаться (неявно, при использовании правильных (современных) библиотечных вызовов).