Ubuntu サーバー 14.04 がインストールされた Ubuntu ルーターがあります。物理ネットワーク インターフェイスは次のとおりです。
eth0 - ローカル LAN
eth3 - WAN (インターネット)
wlan2 - ローカル無線 LAN (AP)
これは私の /etc/network/interfaces です:
# The loopback network interface
auto lo
iface lo inet loopback
# LAN interface
auto eth0
iface eth0 inet manual
# This is the Wireless section.
auto wlan2
iface wlan2 inet manual
up /sbin/ifconfig wlan0 up
# This is the Bridge section.
auto br0
iface br0 inet static
address 192.168.2.106
network 192.168.2.0
netmask 255.255.255.0
bridge_ports eth0 wlan0
# WAN network interface (NAT-ed)
auto eth3
iface eth3 inet static
address 192.168.1.1
netmask 255.255.255.0
gateway 192.168.1.20
dns-nameservers 8.8.8.8 4.4.4.4
ルートは次のとおりです:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 192.168.1.20 0.0.0.0 UG 0 0 0 eth3
192.168.1.0 * 255.255.255.0 U 0 0 0 eth3
192.168.2.0 * 255.255.255.0 U 0 0 0 br0
私は UFW を使用しており、/etc/ufw/before.rules に以下を追加しました:
# Configure NAT settings
*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 192.168.2.0/24 -o eth3 -j MASQUERADE
COMMIT
UFW のステータス:
Status: active
To Action From
-- ------ ----
22 ALLOW Anywhere
80 ALLOW Anywhere
443 ALLOW Anywhere
Anywhere ALLOW 192.168.2.0/24
22 (v6) ALLOW Anywhere (v6)
80 (v6) ALLOW Anywhere (v6)
443 (v6) ALLOW Anywhere (v6)
それから、WiFi APにもhostapdを使用します。すべてが完璧に動作します。しかし...私がやりたいのは、2番目のWANインターフェイスとなる追加のネットワークカードを追加することです。パブリック静的IPを持っている現在の eth3 は非常に高速で信頼性の高い接続であるため、メインのインターネット接続として使用したいのですが、NAT の背後にあるため、パブリック IP がありません。パブリック IP を使用した追加のインターネット接続があり、これを外部からサーバー (ルーター) にアクセスするためだけに使用したいと考えています (ssh、http、https)。パブリック IP インターネット接続は eth2 に接続されます。
設定方法がわかりません。この設定を /etc/network/interfaces に入力しただけでは、eth2 に指定されたパブリック IP 経由でサーバー (ssh、http、https) にアクセスできません。(このパブリック IP によるインターネット接続は正常です。別の HW ルーターでテストしたところ、外部から問題なくアクセスできました)。
# WAN network interface with a public IP
auto eth2
iface eth2 inet static
address 217.XXX.XXX.AAA
netmask 255.255.255.224
gateway 217.XXX.XXX.BBB
dns-nameservers 8.8.8.8 4.4.4.4
これを解決するのを手伝ってくれる人はいますか?
はい、問題は部分的に解決しました。>>>
新しいルーティング テーブルを作成し、「パブリック IP WAN」のルーティングを追加し、IP ルールを追加したので、パブリック IP からのすべてのトラフィックは、新しいルーティング テーブルを使用して正しいインターフェイス/GW にルーティングされます。
sudo ip route add 217.XXX.XXX.160/27 dev eth2 src 217.XXX.XXX.185 table T1
sudo ip route add default via 217.XXX.XXX.161 table T1
sudo ip rule add from 217.XXX.XXX.185 table T1
これで、WAN eth2 に関連付けられたパブリック IP 経由で外部からサーバーにアクセスできるようになりました。心配なのは、これを設定してから、ルーターの背後の LAN からパブリック IP 経由でサーバーにアクセスできなくなることです。これは、ルーターの背後の LAN から eth3 (パブリック IP なしの WAN インターフェイス eht3) 経由ですべてをルーティングするようにマスカレードが設定されているためだと思います。正しいでしょうか? これを修正する方法はありますか?
答え1
完全に解決しました
これで設定は正しくなり、セットアップ全体が機能するようになったので、パブリック IP (WAN1) 経由でインターネットからサーバーにアクセスし、LAN を WAN2 経由でインターネットにルーティングし、LAN からパブリック IP (WAN1) 経由でサーバーにアクセスできるようになりました。これは、前に説明した方法で動作させるために構成する必要があったルーティングです。
ip route del default table main
ip route add default via 192.168.1.20 dev eth3 table main
ip route add 217.XXX.XXX.160/27 dev eth2 src 217.XXX.XXX.185 table T1
ip route add default via 217.XXX.XXX.161 dev eth2 table T1
ip route add 192.168.2.0/24 dev br0 table T1
ip route add 192.168.1.0/24 dev eth3 table T1
ip route add 127.0.0.0/8 dev lo table T1
ip route add 192.168.1.0/24 dev eth3 src 192.168.1.1 table T2
ip route add default via 192.168.1.20 dev eth3 table T2
ip route add 192.168.2.0/24 dev br0 table T2
ip route add 217.XXX.XXX.160/27 dev eth2 table T2
ip route add 127.0.0.0/8 dev lo table T2
ip rule add from 217.XXX.XXX.185 table T1
ip rule add from 192.168.1.1 table T2
そうです。それで解決です。