ネットワーキング – Ubuntuでは動作していないイーサネットへのWifiのブリッジング

bridge ethernet networking ubuntu wireless-networking

Windowsを実行しているとき、私は私のwifiは私のラップトップのイーサネット接続を介して接続をブリッジすることができましたので、イーサネットのみのデバイスの範囲は、私のwifi(ラズベリーパイ、Xboxなどなど)からピギーバックすることができました。私は今、Ubuntu内で同じことをしようとしています, すなわち、セットアップは次のようになります

無線ルーター —> ラップトップのWifi —> イーサネットへのブリッジ —> イーサネットポートに接続されたインターネットを必要とするデバイス

今、Ubuntuでbrctlを使って動作させようとしています

以下のコマンドを使ってみました

sudo brctl addif br0 eth0 wlan0

そして、以下のようなエラーが出ます

can't add wlan0 to bridge br0: Operation not supported

私は、私が非常に簡単にWindowsでできることがLinuxでできないと信じて拒否しているので、誰かが助けてくれることを期待しています

何か情報が必要な場合は、私に知らせてください。ありがとうございます

  25  Zac Powell  2013-05-20


ベストアンサー

これはできません。WiFiクライアントの接続をブリッジすることはできません。できればWDSじゃなくてブリッジするだけです

問題は非常に単純で、アクセスポイントはWiFi仕様によって、何かがその送信を許可しない限り、WiFiネットワーク上でトラフィックをブロードキャストすることが禁止されています。これは主に、WiFiネットワークが非常に遅く、もしあるとしてもセキュリティが貧弱だった時代の遺物です

ブリッジはアクセスポイントへのクライアント接続のみを持っています。これは、アクセスポイントがブリッジにバインドされたトラフィックを送信することを許可するだけです。ブリッジに接続されているマシンはすべてアクセスポイントのクライアントではないため、アクセスポイントはWiFiリンクを介してそれらのマシンにバインドされたトラフィックを送信する理由がありません。そのため、そうはなりません

残念ながら、WiFiはイーサネットと同じような動作を期待してしまいがちです。しかし、それは噛み付くのに十分な違いがあるだけなのです

WDS 設定は、アクセスポイントがどのクライアントにもバインドされないトラフィックを送信するための特定の権限です。両端がWDSをサポートしている場合は、ブリッジングエンドポイントのアドレスと宛先のアドレスが含まれており、アクセスポイントがトラフィックを送信することを許可します

これを行うには、ブリッジング以外の何かを使用する必要があります。例えばNATを使ったルーティング。また、WiFiリンクの両端がサポートしている場合は、4アドレスモードを使用することもできます

12  David Schwartz  2013-10-13


私はLXCで同じような問題を抱えていましたが、私はwifiデバイスのブリッジング問題を回避しました。まず、パソコンに予備のイーサネットデバイスが必要です。コツはイーサネットデバイスからwifiへのルートを作ることです

サーバファイルの /etc/network/interfaces を変更し、バーチャルホストに使用していないネットワーク、例えば 10.0.0.0.0 を選択します。予備のイーサネットインターフェースに1つのIPを割り当て、ここではeth0とし、このようにブリッジングします

auto br0
iface br0 inet static
address 10.0.0.1
netmask 255.255.255.0
bridge_ports eth0
bridge_fd 0
bridge_maxwait 0

これが完了したら、以前にここでKostyantynさんが回答してくれたように、MASQUERADEの方法で行うことができます。これらはrc.localか、起動時やバーチャルドメインを起動する前に実行しなければならないスクリプトに記述されているはずです

# iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
# echo "1" > /proc/sys/net/ipv4/ip_forward

仮想サーバーでは、/etc/network/interfacesで静的IPを設定します。私はネットワーク 10.0.0.0.0 を使用していますが、私は .2 から使用を開始します、あなたがより多くのバーチャルホストを作成するときには、おそらく 3 を使用することになるでしょう、など。もしあなたが多くのバーチャルホストを持っているのであれば、それらのために dhcp サーバをインストールすることを検討してみてください。.1 は以前に設定したようにゲートウェイです

auto eth0
iface eth0 inet static
address 10.0.0.2
netmask 255.255.255.0
broadcast 10.0.0.255
gateway 10.0.0.1

etc/resolv.confにDNSサーバを設定します

nameserver 192.168.1.1

これが助けになることを願っています

3  Francesc Guasch  2014-11-19


本当に必要なのは橋ではなく、どちらかだと思います

  • SNAT (WLAN が静的 IP を持っている場合) (このページ を参照)

or

  • MASQUERADE(WLANがダイナミックIPを持っている場合 – つまり、IPが変化する)

1) 以下の内容でforwarding_enable_file.shを作成します

#!/bin/bash
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE

2) ファイルを実行します

sudo ./forwarding_enable_file.sh

3) ホストの残りの部分で、ゲートウェイとしてUbuntuのボックスを指定します 注: いくつかのボックスがLinuxを実行している場合は、このコマンドを使用して実行することができます

sudo ip route add default via ubuntu-ip

ここでubuntu-ipはubuntu-boxのIPアドレス、すなわち192.168.1.10に置き換えてください

4) 他のホストからいくつかの IP、例えば 8.8.8.8.8 を ping してみてください

ping 8.8.8.8

5) ドメインにpingしてDNS設定を確認します

ping slivkoed.ru

6) ステップ4)が動作し、5)が動作しない場合は、DNSの設定に問題があると思われます

# echo "nameserver 8.8.8.8" > /etc/resolv.conf

ステップ5)を再度実行します

resolv.conf の詳細は こちら を参照してください

0  Kostyantyn  2014-01-10


ブリッジ化する前にインターフェースをダウンさせる必要があります

ifconfig eth0 ダウン

ifconfig wlan0 ダウン

-1  Scandalist  2013-05-20


sudo iw dev wlan1 set 4addr on

-4  Emilio Navarrete Lineros  2013-10-13


タイトルとURLをコピーしました