Во-первых, вы должны помнить, что с IPv6 любая машина может иметь несколько адресов IPv6, и они могут находиться в разных сетях, и любой из них может использоваться, в зависимости от того, где вы хотите достичь.
Итак, прежде чем вы сможете ответить на вопрос, какой IP-адрес вашего источника, вы должны решить, куда вы отправляете трафик. Затем вы можете просто попросить Linux сообщить вам, какой IPv6-адрес будет источником при отправке трафика в этот пункт назначения.
Если вы отправляете его в «Интернет», просто выберите случайный глобальный IPv6-адрес, например, общедоступный DNS-адрес Google.
ip r get to 2001:4860:4860::8888 | perl -ne '/src ([\w:]+)/ && print "$1\n"'
2001:db8:f387:c818:5:2:0:1000
Это запрашивает у Linux маршрут к этому месту назначения. Perl анализирует результат поиска src
и затем печатает следующее поле.
Предоставляя другое место назначения, вы можете получить другой адрес источника:
ip r get to ::1 | perl -ne '/src ([\w:]+)/ && print "$1\n"'
::1