У меня есть ящик с 1 частным IPv4 (192.168.0.X) и некоторым IPv6 (назовем один Y :: Z). У меня есть приложение, прослушивающее 192.168.0.X на порту 1234, и приложение, которое хочет подключиться к этой службе, но использует Y :: Z в качестве адреса источника.
Итак, я подумал об использовании префикса :: ffff: 0: 0/96, но telnetting :: ffff: 192.168.0.X (с использованием исходного адреса Y :: Z) выдает ошибку "сеть недоступна". Я пытался добавить правила маршрутизации, но ничего не работает.
Как я могу позволить
telnet -b Y::Z ::ffff:192.168.0.X 1234
работать?
Спасибо.
редактировать: ОС: Debian Squeeze (в контейнере OpenVZ, ядро 2.6.32).
Я также забыл упомянуть, что
telnet -6 ::ffff:192.168.0.X 1234
работает без ошибок.
У меня есть ящик с 1 частным IPv4 (192.168.0.X) и некоторым IPv6 (назовем один Y :: Z). …
telnet -b Y::Z ::ffff:192.168.0.X 1234
Вышеизложенное не имеет особого смысла: вы пытаетесь подключиться по Telnet к собственному IPv4-адресу (представленному в нотации IPv6) с собственным IPv6-адресом в качестве источника? Это никогда не сработает, если у вас нет чего-то вроде 464XLAT и NAT64.
Да, в некоторых системах и с некоторыми настройками (обычно по умолчанию в Linux) вы можете принимать подключения только по IPv4 к сокетам IPv6, но и исходный, и целевой адрес любого такого подключения все равно должны быть IPv4.