私と私が次ssh root@server -R 5901:localhost:5900
のようなnetstat -an
状況に遭遇した場合:
Active Internet connections (servers and established) │
Proto Recv-Q Send-Q Local Address Foreign Address State │
tcp 0 0 127.0.0.1:5901 0.0.0.0:* LISTEN │
tcp6 0 0 ::1:5901 :::* LISTEN │
そしてssh_configを許可し、GatewayPorts yes
同じことをするなら
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN
tcp6 0 0 :::5901 :::* LISTEN
(私のサービスは外部ネットワークからアクセスできます)
::1:5901
(代わりに)その形式をどのように読みますか:::5901
?
編集する:
パブリックネットワークに公開されていないことをどのように読みますか?
0.0.0.0 は「ローカルコンピュータのすべての IP アドレス」を意味します。
ベストアンサー1
IPv6用語の::1
ループバックアドレス(127.0.0.1
IPv4用語と同じ)。
本質的に0:0:0:0:0:0:0:1
(またはより正確には興味深いものではありませんが0000:0000:0000:0000:0000:0000:0000:0001
)、すべてのゼロが折り畳まれています::1
。機能的にはIPv4と同じで、127.0.0.1
同じ役割を果たします。
したがって、最初の出力では、ラインtcp6
はすべてのアドレスではなくIPv6ループバックアドレスを受信するため、外部には表示されません。
2番目の例(:::5901
)は、指定されていないIPv6アドレス::
の後にコロンとポート番号が追加されたことを示しています。これはポートがある未指定のIPv4アドレスと機能的に同じであるため、0.0.0.0:5901
すべてのIPv6アドレスを介してネットワークに公開される可能性があります。