web-dev-qa-db-ja.com

iptablesMASQUERADINGを介したHTTPSサイトへの断続的なアクセス

問題:ネットワーク上のすべてのホストですべてのhttpsがタイムアウトする場合を除いて、ネットワーク上ではすべてが正常です。数分後、数時間はほぼ瞬時に戻ります。

詳細:

2つのNICを備えたUbuntuServer12.04を実行しています。

  • NIC 1はWAN、ケーブルモデムからのdhcpです
  • NIC 2はLANであり、192.168.0.1はルーターのWANポート192.168.0.2に接続されています
  • すべてのiptablesチェーンには、動作するまでポリシーを受け入れます
  • 192.168.0.0/16からのすべてのトラフィックは、WANポート)からマスカレードされます
  • 192.168.0.0/16からのすべての転送が受け入れられます
  • 確立または関連している場合、192.168.0.0/16へのすべての転送が受け入れられます
  • 他の構成をテストしているため、10.0.0.0/16の上記と同じ3つのルール

ルーター:Asus rt-n56u

  • LAN上のすべてが10.0.0.0/24(2.4ghz、5ghzおよびLANポート)内のDHCPです。
  • 10.0.0.1ゲートウェイからWANポートを介して192.168.0.1へのNAT
  • 静的ルーティングは構成されていません)
  • 組み込みのファイアウォールは今のところ無効になっています

以下に私の/ etc/network/interfaces、iptables設定とifconfigがあります。他に役立つ情報があれば教えてください。

###############################################################
/etc/network/interfaces:

#connects to the cable modem
auto WAN
iface WAN inet dhcp

#connects to the LAN router
auto LAN
iface LAN inet static
address 192.168.0.1
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255

#loopback interface
auto lo
iface lo inet loopback


###############################################################
iptables rules:

#I've set all the chains to accept. Once I get everything working, I'll implement a whitelist.

iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

#turn on NAT for /16 subnet by mangling with the MASQUERADE module
iptables --table nat -A POSTROUTING -s 192.168.0.0/16 -o WAN -j MASQUERADE
iptables --table nat -A POSTROUTING -s 10.0.0.0/16 -o WAN -j MASQUERADE

#allow all traffic from the /16 subnet to WAN
iptables -A FORWARD -s 192.168.0.0/16 -o WAN -j ACCEPT
iptables -A FORWARD -s 10.0.0.0/16 -i LAN -o WAN -j ACCEPT

#allow traffic from the WAN to the /16 subnet if a connection was established b$
iptables -A FORWARD -d 192.168.0.0/16 -m state --state ESTABLISHED,RELATED -i WAN -j ACCEPT
iptables -A FORWARD -d 10.0.0.0/16 -m state --state ESTABLISHED,RELATED -i WAN -j ACCEPT

#drop packets that attempt to spoof source LAN IPs
iptables -A INPUT -i WAN -s 192.168.0.0/16 -j DROP
iptables -A INPUT -i WAN -s 10.0.0.0/8 -j DROP

###############################################################
ifconfig:

LAN   Link encap:Ethernet  HWaddr 00:22:4d:a1:5d:42
inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
inet6 addr: fe80::222:4dff:fea1:5d42/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:53737 errors:0 dropped:0 overruns:0 frame:0
TX packets:136493 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:8626679 (8.6 MB)  TX bytes:178113059 (178.1 MB)
Interrupt:17 Memory:d0020000-d0040000

WAN   Link encap:Ethernet  HWaddr 00:22:4d:a1:5d:3e
inet addr:XXX.XXX.XXX.XXX  Bcast:255.255.255.255  Mask:255.255.255.224
(external IP sensored)
UP BROADCAST RUNNING MULTICAST  MTU:576  Metric:1
RX packets:142317 errors:0 dropped:0 overruns:0 frame:0
TX packets:54748 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:178555294 (178.5 MB)  TX bytes:8369828 (8.3 MB)
Interrupt:16 Memory:d0120000-d0140000

lo   Link encap:Local Loopback
inet addr:127.0.0.1  Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING  MTU:16436  Metric:1
RX packets:18 errors:0 dropped:0 overruns:0 frame:0
TX packets:18 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1474 (1.4 KB)  TX bytes:1474 (1.4 KB)

任意の提案をいただければ幸いです。前もって感謝します。

1
Jon

問題が解決しました。

DHCP on WANはMTUを576に設定していました(ifconfigで見られるように)。

解決:

-/ etc/dhcp3/dhclient.confのリクエストリストからinterface-mtuを削除しただけです(サーバーがISPから不正な値576を取得しないようにするため)。

-/ etc/network/interfacesの「iface WAN inetdhcp」の下に「mtu1500」を追加しました

リブート。

今ではすべてが最高です。

1
Jon