私のRaspberry Piはeth0ポートを介してPCに接続されています。 RPiをSSHに接続するためにeth0を使用しています。インターネットアクセスが必要なRPiにWebアプリケーションがあります。
これで、固定IPをRPi(192.168.1.50)とPC(192.168.1.66)に設定しました。 PCのワイヤレスアダプタを介してインターネットに接続でき、RPiのUSB Wi-Piアダプタを介してインターネットに接続できます。
これはPC用ですifconfig
:
eth0 Link encap:Ethernet HWaddr 3c:a8:2a:7e:fd:7d
inet addr:192.168.1.66 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::3ea8:2aff:fe7e:fd7d/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:184 errors:0 dropped:0 overruns:0 frame:0
TX packets:638 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:20422 (20.4 KB) TX bytes:80928 (80.9 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:4126 errors:0 dropped:0 overruns:0 frame:0
TX packets:4126 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:460006 (460.0 KB) TX bytes:460006 (460.0 KB)
wlan0 Link encap:Ethernet HWaddr 34:e6:ad:08:67:5e
inet addr:192.168.1.13 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::36e6:adff:fe08:675e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:11305 errors:0 dropped:0 overruns:0 frame:0
TX packets:10338 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6496258 (6.4 MB) TX bytes:1391363 (1.3 MB)
RPiでインターネットに接続するとwlan0が192.168.1.10
。
問題は、PCを介してRPiにSSHで接続すると、RPiからインターネットにアクセスできず、route -n
eth0がデフォルトのインターフェイスとして表示されることです。
PCのワイヤレスおよびイーサネット接続をブリッジし、sshを実行するときにインターネットをRPiに共有しようとしたり、wlan0とeth0を同時にアクティブにできるようにRPiの接続をブリッジしようとします。
オプションを試しecho 1 > /proc/sys/net/ipv4/ip_forward
て使用しましたが、成功しませんでした。何か見逃していて何か間違っていますが、実際には見えません。MASQUERADE
iptables
/etc/network/interfaces
目標を達成する方法、ファイルを設定する方法、およびその他の考慮事項を説明してください。
ありがとうございます。
答え1
使用コマンド: https://wiki.debian.org/BridgeNetworkConnections(中央はワイヤレス)
bridge-utils をインストールします。
apt-get install bridge-utils (ubuntu)
aptitude install bridge-utils (debain)
nano /etc/network/interfaces
次の行を追加
pre-up iwconfig wlan0 essid $YOUR_ESSID (wifi name)
bridge_hw $MAC_ADDRESS_OF_YOUR_WIRELESS_CARD(34:e6:ad:08:67:5e)
ebtableをインストールします。
aptitude install ebtables (debian)
apt-get install ebtables (ubuntu)
wlan0 MACアドレス($ MAC = 34:e6:ad:08:67:5e)を使用してブリッジネットワークを設定します。
ebtables -t nat -A POSTROUTING -o wlan0 -j snat --to-src $MAC --snat-arp --snat-target ACCEPT
インターネットにアクセスする必要があるデバイスのMACアドレスを追加します。 ($ ipをipに置き換え、$ MACをpiに置き換え、コンピュータのMACアドレスに置き換えます。)
ルール設定:
ebtables -t nat -A PREROUTING -p IPv4 -i wlan0 --ip-dst $IP -j dnat --to-dst $MAC --dnat-target ACCEPT
ebtables -t nat -A PREROUTING -p ARP -i wlan0 --arp-ip-dst $IP -j dnat --to-dst $MAC --dnat-target ACCEPT
上記のコマンドを繰り返して、piとコンピュータを追加します。
ルールを保存:
EBTABLES_ATOMIC_FILE=/root/ebtables-atomic ebtables -t nat --atomic-save
EBTABLES_ATOMIC_FILE=/root/ebtables-atomic ebtables -t nat --atomic-commit
グラフィカルユーザーインターフェースの使用: https://askubuntu.com/questions/359856/share-wireless-internet-connection-through-ethernet