Я пытаюсь понять, как использовать все адреса, которые у меня есть на моем VPS, с префиксом / 64 ipv6. Однако, когда я пытаюсь отправить сообщения, они всегда выходят через адрес, назначенный интерфейсу, я не могу понять, как заставить их уйти через определенный IP.
Вот мой вывод ifconfig для соответствующего интерфейса:
ens3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 51.x.y.z netmask 255.255.255.255 broadcast 0.0.0.0
inet6 fe80::i:j:k:1c0 prefixlen 64 scopeid 0x20<link>
inet6 2607:a:b:c::55 prefixlen 64 scopeid 0x0<global>
ether fa:16:l:m:n:o txqueuelen 1000 (Ethernet)
Когда я проверяю свой IPv6 через CLI, я четко получаю:
# curl icanhazip.com
2607:a:b:c::55
Если я правильно понимаю, 2607: a: b: c: 1 :: 55 также является IP-адресом в моем диапазоне. Как мне отправить сообщение через этот IP-адрес? Тогда мой ожидаемый результат был бы таким:
# curl icanhazip.com
2607:a:b:c:1::55
Спасибо!
Предполагая, что вы хотите использовать другой IPv6-адрес для одноразового задания или короткого периода, вы можете просто добавить (или изменить) IP-адрес с помощью ip
команда например:
ip addr add 2607:a:b:c:1::55 dev eth0 valid_lft 120 preferred_lft 120
В этом примере вы добавляете IP-адрес для интерфейса eth0 со временем жизни всего 2 минуты.
Вы также можете указать Curl использовать определенный интерфейс / исходящий IP-адрес с помощью параметра --interface
вариант. Также взгляните на valid_lft
& preferred_lft
директивы.