Ubuntu 14.04サーバーがルーティングしない

Ubuntu 14.04サーバーがルーティングしない

そこで、自宅のネットワークとブロードバンドに付属していた既存の安物のルーターの間のゲートウェイ(?) サーバーとして機能するデュアル ホーム BRO IDS ボックスをセットアップしようとしています。私が持っているのはこれです... (パイプはワイヤを表します。フォーマットが下手で申し訳ありません)

Internet  
   |  
ADSL Router running DHCP  (gateway is 192.168.1.254)  
   |  
eth0 (192.168.1.1)  
ubuntu 1404 server running bro IDS, running bind9,   
it serves DHCP on 192.168.2.0 network only on eth1  
eth1 (192.168.2.1)  
   |  
Internal LAN running two Apple Airports in bridge mode  

正しく設定したと思うのですが、Ubuntu Server がルーティングしません。SSH で接続して両方のインターフェースに ping し、インターネットにも ping できます。ただし、どちらの LAN 上のホストも Ubuntu Server の反対側にルーティングできません。

以下はroutes -nの出力です

Kernel IP routing tableico /etc/network/interfaces
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         
192.168.1.254   0.0.0.0         UG    0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1

そしてここに/etc/interfaces

auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
  address 192.168.1.1
  netmask 255.255.255.0
  gateway 192.168.1.254
  broadcast 192.168.1.255
 auto eth1   
 iface eth1 inet static  
  address 192.168.2.1  
  network 192.168.2.0  
  netmask 255.255.255.0  
  broadcast 192.168.2.255  
  gateway 192.168.1.254

sysctl を使用して ipv4 ipforwarding を有効にしました。Ubuntu DHCP サーバーは 192.168.2.0 IP アドレスのみを提供するように設定されており、正常に動作しています。eth0 (192.168.1.0) を提供する別の DHCP ルーターがあり、これをアクティブにして、ブロードバンド ルーターの Wi-Fi を使用して問題を解決しながら Web を閲覧できるようにしています。

しかし、いずれにしても、静的 IP と動的に割り当てられた IP の両方を使用して Ubuntu ボックスの反対側にログインした後、Ubuntu ボックスの反対側に ping を実行することができませんでした。dhcpd.conf の内容も投稿できますか?

何か簡単なことを見逃しているのでしょうか? Ubuntu ボックスで問題を絞り込むために実行できるトラブルシューティング手順はありますか。現在は、「ルートが見つからない / 存在しません」というメッセージが表示されるだけです... /etc/dhcpd.conf の詳細もここにあります...

ddns-update-style none;  
default-lease-time 600;  
max-lease-time 7200;  
authoritative;  
subnet 192.168.2.0 netmask 255.255.255.0 {  
range 192.168.2.2 192.168.2.240;  
option routers 192.168.1.254;  
option broadcast-address 192.168.2.255;  
option domain-name-servers 192.168.2.1, 8.8.8.8;  
}  

これはルータを介したpingの出力です

Request timeout for icmp_seq 0  
Request timeout for icmp_seq 1  
Request timeout for icmp_seq 2  

また、設定中に、最初はブリッジとして設定しましたが、その設定はずっと前にインターフェースから削除されました(まったく機能しませんでした)

ご要望に応じて、iptables -Lの出力を以下に示します。

チェーン INPUT (ポリシー ACCEPT)
ターゲット prot opt ソース 宛先

チェーン FORWARD (ポリシー ACCEPT)
ターゲット prot opt ソース 宛先

チェーン OUTPUT (ポリシー ACCEPT)
ターゲット prot opt ソース 宛先

答え1

少なくとも私には、一見してはっきりしない点がいくつかあります。

  1. /etc/dhcpd.confの次の行はきっと間違っている:

    オプションルータ 192.168.1.254;

そのはず

  option routers 192.168.2.1

現在、基本的に DHCP クライアントに、そのデフォルト ゲートウェイがクライアントのサブネットとは異なるサブネット上にあることを伝えています。クライアントがどのようにしてそのゲートウェイに到達できると期待しているのでしょうか。クライアントに渡すゲートウェイの正しいアドレスは、ルーターの LAN インターフェイスです。

  1. DHCPクライアントからpingができないとおっしゃっていますが、名前(例えばwww.google.com)またはIP(例えば8.8.8.8)?DNS解決については何も言っていないので、違いがあります。かもしれない起こる

    ping -c1 8.8.8.8

返事が来る一方で

   ping -c1 www.google.com

ではない。もしこの場合、あなたはのみ次の2行が抜けているconf ファイル:

  nameserver 8.8.8.8
  nameserver 8.8.4.4

もしこれがないこの件については、読み進めてください。

  1. あなたが言うことiptables完全には一貫していません。iptablesにNATのルールを追加したと主張しているのに、次に既存のiptablesルールを表示しているからです。フィルターテーブルではなくナットテーブル。以下のコマンドを発行してください

    iptables -t nat -A POSTROUTING -o eth0 -j マスカレード

その後、それなし再起動したら、上記と同じ ping コマンドを発行してみてください。

これらすべてが失敗した場合は、Ubuntuマシンで2つのターミナルを開き、次の2つのコマンドを発行してください。ターミナル1で、

  tcpdump -i eth0 -n icmp

ターミナル2では

  tcpdump -i eth1 -n icmp

次にDHCPクライアントの1つにアクセスし、ピン上記のコマンドを実行します。すべてがうまくいけば、pingとその応答が飛ぶのが見えるはずです。両方端末。そうでない場合は、もう一度ヘルプを参照するために出力を貼り付けてください。

答え2

Ubuntu ルーターはルーティングに問題はありません。これは問題ではありません。問題は、ADSL ルーターが 192.168.2.x ネットワーク上のマシンに到達する方法を知らないため、構成が機能しないことです。また、192.168.2.x ネットワークに対して NAT を実行するように構成されたデバイスはありません。したがって、構成は意味をなさないのです。

たとえば、 が192.168.2.9pingするとします8.8.8.8。Ubuntu サーバーは、それをデフォルト ルートに沿って問題なくルーティングします。しかし、ADSL ルーターは、LAN インターフェイスで から へのパケットを受信します192.168.2.98.8.8.8、どうすればよいかわかりません。

更新: 問題を 1 つだけ確認するには、ADSL ルーターのルーティング テーブルを検討してください。ルーターが持つ唯一のローカル ルートは、LAN への 192.168.1.0/24 です。他のすべてのルートは ISP へのリンクに向かいます。したがって、192.168.2.1 へのパケットを処理する場合、ルーティング テーブルではそのパケットをインターネットに送信するように指示されます。これは明らかに機能しません。

関連情報