ルーターとしての Debian Squeeze

ルーターとしての Debian Squeeze

Debian Squeeze (Dreamplug 風) をルーターとして設定しようとしています。うまく組み合わせることができないようです。

ETH0: アップストリーム/インターネット - DHCP クライアント
ETH1: ダウンストリーム/Lan - 192.168.0.1 DHCP サーバー

sudo vim /etc/ネットワーク/インターフェース

auto lo br0
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto eth1
        iface eth1 inet static
        address 192.168.0.1
        network 192.168.0.0
        netmask 255.255.255.0
        broadcast 192.168.0.255

iface br0 inet dhcp
        bridge_ports eth0 eth1

sudo vim /etc/dhcp/dhcpd.conf

option domain-name "MyPlug.MyServer.com";
option domain-name-servers 8.8.8.8, 192.168.0.1;

default-lease-time 600000000;
max-lease-time 720000000;

subnet 192.168.0.0 netmask 255.255.255.0 {
    range 192.168.0.100 192.168.0.200;
    option routers 192.168.0.1;
    option broadcast-address 192.168.0.255;
}

sudo vim /etc/default/isc-dhcp-server

INTERFACES="eth1"

サービス ネットワーキング 再起動
サービス isc-dhcp-server 再起動

私の Windows 7 マシンは、強制的に解放/更新した後、IP を取得します。一度、PuTTY 経由でサーバーに接続できました。

設定に何か目立った間違いはありますか? または他に確認すべき点はありますか?

答え1

内部インターフェースと外部インターフェースをブリッジしないでください。このボックスはスイッチではなくルーターです。マシンをルーターにするには、インターフェース間でパケットを「転送」するように指示する必要があります。私は でこれを行いますecho 1>/proc/sys/net/ipv4/ip_forward。IIRC の方法(TM) は、net.ipv4.ip_forward=1/etc/sysctl.conf に 1 行追加して を実行することです/etc/init.d/procps restart

proc ファイル システムは、通常 /proc にマウントされ、カーネル情報と構成を読み取りおよび書き込み可能なファイルとして表現します。/proc/sys/net/ipv4/ip_forward に 0 または 1 を書き込むことで、インターフェイス間で IP パケットを転送するカーネル機能を無効または有効にします。カーネルにパケットを転送させたいのです。

これで、マシンはルーターになりましたが、マカレーディングも必要になります。そのためには、次の操作が必要です。

iptables -t nat -A POSTROUTING -i eth1 -o eth0 -j MASQUERADE(見るhttp://tldp.org/HOWTO/IP-マスカレード-HOWTO/もっと詳しく知りたい場合は

IPv4 を使用している限り、ISP から取得できる IP アドレスは 1 つだけで、インターネット上のシステムとやり取りするときには、すべてのクライアントがこの 1 つのアドレスを共有します。マスカレードは、この IP アドレスの共有を処理するためのすべての処理を行います。重要なのは、iptables にマスカレードを適用するタイミングを指示する必要があることです。iptables が -i と -o を受け入れなくなった場合、適切な代替ルールは次のとおりです。

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 ! -d 192.168.0.0/24 -j MASQUERADE

サブネット定義192.168.0.0/24(両方!)をサブネットに置き換える必要があるかもしれませんあなたの顧客が住んでいるルールは「クライアントサブネットから発信され、クライアントサブネット外のホストに宛てられたすべてのパケットに対してマスカレードを行う」としています。

Dreamplug についてはよくわかりませんが、/etc/firewall* または /etc/iptables* というファイルにこのステートメントを追加して、再起動のたびにこのステートメントが実行されるようにしてください。「ファイアウォール ルール」と、それを配置する場所については、ドキュメントを確認してください。

DHCP 構成では、リース時間が異常に長いようです。3 ~ 5 0 を減算してください。また、このような大きな数値を処理できない、または処理しないクライアントが存在する可能性もあります。また、ドメイン ネーム サーバーの順序を逆にする必要があります。クライアントは、最初にリストの最初のサーバーに問い合わせます。ルーターがネーム サーバーとしても機能する場合は、以前のクエリをしばらく記憶している可能性が高くなります。つまり、クライアントが同じアドレスを 2 回目に要求した場合、Google ネーム サーバーに問い合わせる場合に比べて、応答がはるかに速くなります。

答え2

ブリッジを取り外します。このタイプの配置では安全ではありません。

代わりに、arno-iptables-firewallパッケージをインストールして、安全なルーター構成を簡単かつ安全にセットアップしてください。残りの作業は自動的に行われます。

Debian パッケージの説明より:

Debian の他の軽量な iptables フロントエンドとは異なり、arno-iptables-firewall はいくつかの質問をするだけで、安全で制限的なファイアウォールを設定して読み込みます。これには、NAT 経由のインターネット アクセス用の内部ネットワークと、潜在的なネットワーク サービス (http や ssh など) の設定が含まれます。

自分で iptables を安全に設定する方法がわからない場合は、このパッケージをインストールしてください。

関連情報