web-dev-qa-db-ja.com

サーバーからのSYN / ACK応答がありません

最初に、LAN組織について説明します。私は2つのネットワークを持っています(スキーム http://take.ms/s3CSy ):

  1. 192.168.0.0/255.255.255.0、ルーターASUS RT-N65U、内部IP 192.168.0.1、静的外部IP、NATなし:1.2.3.4。 VPNを実行しているルーターPPTPサーバー、VPN LANIP範囲172.16.0.0/ 255.255.255.0、VPNサーバーIP 172.16.0.1、MTU/MRU1300。このネットワーク内の私のラップトップ(ラップトップ#1) 。
  2. 192.168.2.0/255.255.255.0、ルーターZyXEL Keenetic 4G、内部IP 192.168.2.1、動的外部IP、NAT:10.0.0.1スイッチCiscosg200-26pに接続されているすべてのクライアント。

2番目のLANには、Debian LinuxとPPTP VPNクライアントがインストールされているWebサーバーがあります。PPTPクライアントは最初のLANのルーターに接続され、IP172.16.0.11を取得します。 。pptpクライアントに接続した直後に、2つのルートを追加します。

ip route add 172.16.0.0/24 dev ppp0
ip route add 192.168.0.0/24 dev ppp0

したがって、VPNクライアント(Webサーバー)でテーブルをルーティングします。

root@system:~# ip route
default via 192.168.2.1 dev eth0 
1.2.3.4 via 192.168.2.1 dev eth0  src 192.168.2.3 
172.16.0.0/24 dev ppp0  scope link 
172.16.0.1 dev ppp0  proto kernel  scope link  src 172.16.0.11
192.168.0.0/24 dev ppp0  scope link 
192.168.2.0/24 dev eth0  proto kernel  scope link  src 192.168.2.3 

Webサーバーでは、「iptables -L -v-n」は空のテーブルを表示します。

VPNサーバー(ASUS RT-N65Uルーター)のルートテーブル:

/home/root # ip route
default via 2.3.4.5 dev ppp0 
2.3.4.5 dev ppp0  proto kernel  scope link  src 1.2.3.4 
127.0.0.0/8 dev lo  scope link 
172.16.0.12 dev ppp10  proto kernel  scope link  src 172.16.0.1 
192.168.0.0/24 dev br0  proto kernel  scope link  src 192.168.0.1 
192.168.2.0/24 dev ppp10  scope link 

ルーターASUSRT-N65Uでは、ドメインhome.example.comのDynDNSもアクティブにしています。および2ポート転送設定:

1. Synology NAS web remote access: Remote port 6667, local IP: 192.168.0.2, local port 5000, Protocol BOTH (TCP & UDP)
2. Web server remote access: Remote port 6668, local IP: 192.168.2.3, local port 80, Protocol BOTH (TCP & UDP)

最初のLANでラップトップからWebサーバー(URL http _ // 192.168.2.3:80)にアクセスしようとすると、問題ありません。すべてが魅力のように機能します。

しかし、別のラップトップ(スキームのラップトップ#2)からWebサーバー(URL http _ // 1.2.3.4:6668)にアクセスしようとすると、ページが見つかりません。 Synologyにアクセスしようとしても問題ありません。

Webサーバーにtcpdumpをインストールし、パケットをキャプチャしました。

  1. 最初のLANのラップトップからのアクセス、すべてが良いようです。 PCAPファイルhttps _ // www.dropbox.com/s/pvg5rd4rw5omz9z/fromlan.pcap?dl=0(_を:)に置き換えます
  2. リモートホストからのアクセス。 WebサーバーがSYNパケットを受信して​​いるのに、ACKパケットをクライアントに返送していないことがわかります。 PCAPファイルhttps _ // www.dropbox.com/s/hxfxudtrre12i7s/fromremote.pcap?dl=0(_を:)に置き換えます

Webサーバーにインストールされたiptstateで、リモートサーバーからの接続を示します。

Source                      Destination                Prt State         TTL
199.58.86.207:58540         192.168.2.3:80             tcp SYN_RECV      0:00:59

問題はどこだ?

たぶんここにルートの問題があります。リモートサーバーからのパケットはVPN接続ルートで送信されますが、デフォルトでは(192.168.2.1経由で)送信されますか?

1
Aydar

問題はWebサーバー上のルートにありました:

テスト用に、ppp0インターフェイスを介して199.58.86.0/24に追加されたルートと、ページが正常に開かれました。

2
Aydar