ノートパソコンの Wi-Fi をイーサネット経由で別の PC に使用する

ノートパソコンの Wi-Fi をイーサネット経由で別の PC に使用する

WLAN に接続されたノートパソコン経由で PC をインターネットに接続したいと考えています。

セットアップは次の図のようになります。 PC (eth0) -> Notebook (eth0) -> Notebook(wlan0) -> Routerどちら
もノートブックでは Linux - Arch が実行され、PC では Funtoo が実行されています。

編集: それで、私はラッシュの方法を試しましたが、うまくいきませんでした。そこで、私がやったことは次のとおりです:

パソコン:

ifconfig eth0 192.168.2.3
route add default gateway 192.168.2.2
nameserver 8.8.8.8 > resolv.conf

ノート:

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o wlan0 -j SNAT --to-source 192.168.2.101

192.168.2.101 は wlan0 の IP アドレスです。192.168.2.2 に ping できません (接続: ネットワークに到達できません)。ノートブックでは接続が機能していないようです。

答え1

とても簡単です。PC をノートパソコンに接続する必要があります。PCeth0で設定します (たとえば、IP を 192.168.2.3、デフォルト ゲートウェイを 192.168.2.2、DNS サーバーを 8.8.8.8 に設定します)。PC で行う必要があるのはこれだけです。ノートパソコンでは、通常どおりインターネット接続を設定し、eth0次の方法で設定する必要があります。IP アドレスを 192.168.2.2 に設定し、iptables でネット転送を有効にします。

IP、GW、DNS を設定できることを願っています。転送を設定するには、ルート ユーザーから次のスクリプトを実行します。

#!/bin/sh
echo 1 > /proc/sys/net/ipv4/ip_forward
INET="wlan0"
INETIP="$(ifconfig $INET | sed -n '/inet addr/{s/.*addr://;s/ .*//;p}')"
iptables -t nat -A POSTROUTING -o $INET -j SNAT --to-source $INETIP

すでに設定されているiptablesルールに注意してください。これらを無効にするには、次のコマンドを実行します。前に上記のスクリプト:

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

すると、PC でインターネットが利用できるようになります。

関連情報