ホームネットワーク内にプライベートサブネットワークをセットアップしたいのですが。これについてはすでにいくつかの記事を読みましたが、Linuxで/etc/network/interface
ファイルを正確に設定する必要があるかどうかはわかりません。 Linuxクライアントは、DSLサブルーターとプライベートサブネットワーク内の他のクライアント間のルーターとして機能する必要があります。クライアントはeth0インターフェイスを介してルーターに接続され、ルーターはwlan0インターフェイスを介してホームwifiに接続されます。
Ubuntuルーターのiptableエントリは次のとおりです。
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
iptables -A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT
Ubuntuルーターの/etc/network/interface
ファイルは次のようになります。
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
allow-hotplug eth0
iface eth0 inet static
address 10.0.0.1
netmask 255.255.255.0
broadcast 10.0.0.255
gateway 192.168.0.1 (Wifi Router IP)
dns-nameservers 192.168.0.1
また、ip4転送を有効にしました。 ubuntuクライアントの場合は次のようになります。
allow-hotplug
iface eth0 net static
address 10.0.0.2 (changed for each client)
netmask 255.255.255.0
broadcast 10.0.0.255
gateway 10.0.0.1 (Ubuntu Router IP)
クライアントでcurl www.google.de
を使用するとCould not resolve Host: www.google.de
が返され、pingはDestination Host Unreachable
で終わります
まず、wlan0インターフェースはDHCPであるため、リースのあるDNSサーバーIPを要求して取得するかどうかを確認する必要があります。これを行うには、ルーターコンピューターからのルックアップをテストして、機能するかどうかを確認します。より正確に要求と許可されたリースを見てください。デフォルトの/etc/dhcp/dhclient.conf
ファイルを使用している場合は、次のように表示されます。
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, domain-search, Host-name,
netbios-name-servers, netbios-scope, interface-mtu,
rfc3442-classless-static-routes, ntp-servers;
domain-name-servers
のリクエストの一部を確認できます。このファイルでリクエストを変更したり、オーバーライドしたりできます。許可されたリースは/var/lib/dhcp/dhclient.wlan0.leases
にあり、そこにDNS行が表示されます。
次に、クライアントコンピューターは静的IPアドレスを使用しているため、DNSとして何を使用するかをクライアントに通知する必要があります。これを `/ etc/network/interfaceファイルに追加する必要があります(つまり、「allow-hotplug」についてはよく知りませんが、そのままにしておきます)。
allow-hotplug
iface eth0 net static
address 10.0.0.2 (changed for each client)
netmask 255.255.255.0
broadcast 10.0.0.255
gateway 10.0.0.1 (Ubuntu Router IP)
dns-nameservers 192.168.0.1
3番目に、ルーターインターフェイスファイルからdns-nameservers
スタンザを削除します。そこには属していません。