ワイヤレスアダプタのないデスクトップコンピュータをワイヤレスネットワークに接続できるようにしたいと思います。
ADSL /ワイヤレスルーターからデスクトップコンピューターまでネットワークケーブルを配線することもできますが、これが現実的でない場合もあります。
私が本当にやりたいのは、ラップトップからスイッチへのネットワークケーブルと、スイッチからデスクトップコンピューターへの別のネットワークケーブルを実行して、デスクトップコンピューターがアクセスできるように、ラップトップのワイヤレスアダプターと有線アダプターをブリッジすることです。私のラップトップを介して私のADSL /ワイヤレスルーターを介してインターネット:
+--------------------+
|ADSL/wireless router|
+--------------------+
|
+-------------------------+
|laptop's wireless adaptor|
| |
|laptop's wired adaptor |
+-------------------------+
|
+------+
|switch|
+------+
|
+-----------------------+
|desktop's wired adapter|
+-----------------------+
少しグーグルすると、ラップトップのワイヤレスアダプターとワイヤードアダプターをブリッジすることでこれを実行できることがわかります。
Windows XPのネットワーク接続で、ローカルエリア接続とワイヤレスネットワーク接続の両方を選択し、右クリックして[ブリッジ接続]を選択します。
私が収集したものから、この(レイヤー2?)ブリッジは、ワイヤレスネットワークからのトラフィックのMACアドレスを調べ、そのMACアドレスを持つネットワークアダプターが有線側にある可能性があると疑われる場合は、有線ネットワークに渡します。およびその逆。
この場合、デスクトップコンピューターがDHCPサーバー(ADSL /ワイヤレスルーターで実行されている)からIPアドレスを取得しようとすると、ラップトップのブリッジを通過するDHCPブロードキャストパケットが送信されると思います。ルーターに送信すると、応答はラップトップのブリッジを介してデスクトップに戻ります。
これは起こりません。
グーグルをもう少し使って、Linuxでこれを行う方法についての説明を見つけました。 Ubuntu 9.10で再起動し、次のように入力します。
Sudo apt-get install bridge-utils
Sudo brctl addbr br0
Sudo brctl addif br0 wlan0
Sudo brctl addif br0 eth0
Sudo ipconfig wlan0 0.0.0.0
Sudo ipconfig eth0 0.0.0.0
繰り返しになりますが、デスクトップはADSL /ワイヤレスルーターに到達できません。
簡単な重要なステップが欠けているのではないかと思います。誰かが私のためにこれにいくつかの光を当てることができますか?
ブリッジの代わりにUbuntuラップトップでNATを使用することにしました。これは、ルーターのDHCPサーバーを使用できないことを除いてはうまく機能します。可能であれば、ラップトップにDHCPサーバーをインストールすることもできます。デスクトップのネットワークを手動で構成する必要はありません。それでも、これがワイヤレスからワイヤードNATへの方法です...
私のルーター(したがって私のラップトップのワイヤレス接続)のネットワークは192.168.1.0です。ラップトップのeth0インターフェイスとデスクトップのネットワークには192.168.0.0を使用します。
まず、システムトレイのネットワークアイコンを右クリックしてネットワークマネージャーをオフにし、[ネットワークを有効にする]からチェックマークを外します。
以下を含む/etc/wpa_supplicant.conf(ルートとして)というファイルを作成します。
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="myssid"
scan_ssid=1
key_mgmt=WPA-PSK
psk="mypresharedkey"
}
ここで、「myssid」はルーターのSSIDであり、「mypresharedkey」はルーターのWPA事前共有キーです。
次に、次の方法でワイヤレスネットワークを起動します。
Sudo iwconfig wlan0 essid myssid
Sudo wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -B
そして、IPアドレス、ネームサーバー、デフォルトゲートウェイで次のように取得します。
Sudo dhclient wlan0
これが最初の部分です。ここで、NATを機能させて、eth0のトラフィックがルーターとの間で送受信できるようにする必要があります。
まず、転送を許可することをUbuntuに伝える必要があります。
Sudo bash
echo 1 > /proc/sys/net/ipv4/ip_forward
exit
Sudoを使用して/ proc/sys/net/ipv4/ip_forwardに1をエコーできると思っていたのですが、何らかの理由で常にアクセス許可拒否メッセージが表示されるため、ルートシェルからSudobashとecho1を実行します。
次に、いくつかの転送ルールを設定します。
Sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
Sudo iptables -A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
Sudo iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT
そして最後にLANポートeth0を設定します。
Sudo ifconfig eth0 192.168.0.254
デスクトップのネットワークを構成するために、すべて私のラップトップで完了しました。
Sudo ifconfig eth0 192.168.0.1
Sudo route add default gw 192.168.0.254
Sudo bash
echo "nameserver 192.168.1.254" > /etc/resolv.conf
exit
繰り返しになりますが、最初にSudo bashを実行しない限り、echoを使用してファイルを書き込むことはできないようです。
以上です。これで、ラップトップのワイヤレス接続を介して、デスクトップからインターネットにアクセスできます。
ブリッジをUbuntuで動作させたいので、まだ答えを探していますが、ブリッジをWindowsXPで動作させることができました。
ローカルエリア接続とワイヤレスネットワーク接続をブリッジした後、コマンドプロンプトを開き、次のように入力しました。
netsh bridge show a
これにより、IDが1のローカルエリア接続とIDが2のワイヤレスネットワーク接続が一覧表示されました。ワイヤレスネットワーク接続のForceCompatibilityModeが不明として表示されたため、次のように入力しました。
netsh bridge set a 2 e
これにより、ワイヤレスネットワーク接続が有効になりました。デスクトップコンピューターは、ルーター上のDHCPサーバーからIPアドレスを取得できました。結局のところ、取得したIPアドレスは、ワイヤレスネットワーク接続が通常取得するIPアドレスと同じであったため、Windowsはネットワーク上のIPアドレスの競合について不平を言いました。デスクトップコンピューターに静的IPアドレスを指定しましたが、すべて問題ありませんでした。デスクトップコンピュータとラップトップの両方でインターネットを使用できるようになりました。