
この質問は、突然、外部WAN IPアドレス経由でLAN内の自分のWebサーバーにアクセスできなくなりましたしかし、何も役に立たなかったので、もう一度試してみます。
WAN アドレス 1.2.3.4 とローカル ネットワーク 192.168.1.1/24 を持つルーターがあります。192.168.1.100 で Web サーバーを実行しています。
ルーターの設定で、Web サーバーに干渉しないように管理パネルのポートを 80 から 81 に変更しました。次に、TCP 80 -> 192.168.1.100:80 のポート転送ルールを追加しました。最後に、ドメイン名 example.com を 1.2.3.4 に割り当てたので、example.com にアクセスすると、世界中から私の Web サーバーに正しくルーティングされます。
ただし、192.168.1.1/24 に接続されているいずれかのデバイスから example.com を入力しようとしても、機能しません。
ping で診断してみましたが、ドメインは IP アドレスに正しく解決されたので、DNS の問題ではないようです。
root@linux:~# ping example.com
PING example.com (1.2.3.4) 56(84) bytes of data.
64 bytes from 1.2.3.4.ip4.feromedia.eu (1.2.3.4): icmp_seq=1 ttl=63
また、traceroute はルーターで停止します。
root@linux:~# traceroute example.com
traceroute to example.com (1.2.3.4), 30 hops max, 60 byte packets
1 192.168.1.1 (192.168.1.1) 0.350 ms 0.256 ms 0.195 ms
2 * * *
3 * * *
4 * * *
上記のリンク先の質問で提案されているように、ルーターに NAT ループバック設定も NAT リフレクション設定も見つかりませんでした。静的ルーティングでは何も設定しておらず、このような動作を引き起こすような操作を行った覚えはありません。
私のルーターはDrayTek Vigor2925です。
答え1
ルーターは NAT ループバック (別名 NAT ヘアピニング) をサポートしていない可能性があります。アフターマーケット ファームウェア ディストリビューション (LEDE など) にアップグレードするか、ルーターを NAT ループバックをサポートする工場出荷時のファームウェアを搭載したもの (Apple AirPort ベース ステーションなど) に交換してください。
答え2
@Spiff が示唆したように、問題はおそらく NAT ループバックのサポート不足にあります。
しかし、私はルーターの設定で静的DNSエントリを使用することでこの状況に対処することができました。DrayTekでは、これは次のように知られています。LAN DNShosts
機能であり、私の知る限り、これはマシン上のファイル内のエントリに似ています。
そこにエントリを追加した後192.168.1.100 example.com
、ルータはネットワーク内のすべてのデバイスに対する DNS クエリ192.168.1.100
に対して LAN アドレスで応答し始めましたexample.com
。そのため、ルータが NAT ループバックをグローバルにサポートしていないにもかかわらず、ドメイン名でローカル Web サーバーにアクセスできるようになりました。