結論
ルータが、ポート開放(静的マスカレード)の設定を参照せずに、自分自身にパケットを送ってしまうから。
詳細
NATループバックという事象について説明する。これが問題になるのは、例えばニンテンドースイッチでスプラトゥーンの対戦をする場合、LAN内にあるサーバをグローバルIPで公開する場合である。
下図1で示したように、LAN内で102号室のコンピュータ(192.168.100.21)を静的マスカレードによって、203.0.113.1 : 8888 などとしてインターネットに向けて公開する状況を考える。
このとき、仮に101号室のコンピュータ(192.168.100.11)から、203.0.113.1 : 8888に向けてアクセスをしても、102号室のパソコンには到達しない。パケットはルータで止まってしまう。
ローカルにあるコンピュータから、203.0.113.1(102号室のパソコン)へとアクセスするとき、ルータは静的マスカレードの設定は参照しない。自身の8888ポートを確認してそこから応答しようとする。本来であれば8888ポートが102号室のコンピュータ(192.168.100.21)にリダイレクトされていることを認識しないといけないのだが、localからWANインターフェースにアクセスしたとき、デフォルトではそのような挙動はしない仕様なのである。
ルータに「静的マスカレードの設定までちゃんと読め」と言いたくなるかもしれないが、これは歴史的に仕方ない事情があるのだ。古の時代、全部の機器にIPアドレスが振られていた頃には「LAN内からWAN側のインターフェースへアクセスし、そこからLAN内の機器へアクセスする」という挙動は想定されていなかったのである。
このため、NATループバックについては、人間がルータへ明示的に、接続設定とは別個にconfigを投入する必要があるという事になったのである。
おまけ:ループバックアドレスとの違い
ループバックアドレスというのは所謂Windowsでいうところの”Localhost”というやつでしょうか。127.0.0.1/8 みたいなやつです。名前だけ見ると “NATループバック” と関係が深そうなんですが、全くの別物です。
参考文献
・ヘアピンNAT機能がないルータだとなぜLAN内から、グローバルIP経由のルートでLAN内のサーバにアクセスできないのか|Yahoo! 知恵袋
・【図解】ループバックアドレスの仕組みとメリット,使い方,ループバックインタフェースとの違い|SEの道標
・パケットとフレームは何が違う?|日経XTECH