まず、IPv6では、マシンに複数のIPv6アドレスがあり、それらが別々のネットワーク上にあり、到達先に応じてそれらのいずれかが使用される可能性があることを覚えておく必要があります。
そのため、送信元IPアドレスは何かという質問に答える前に、トラフィックの送信先を決定する必要があります。次に、その宛先にトラフィックを送信するときに、どのIPv6アドレスがソースになるかをLinuxに指示するだけです。
「インターネット」に送信する場合は、GoogleのパブリックDNSアドレスなど、グローバルIPv6アドレスをランダムに選択するだけです。
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