メインコンテンツまでスキップ

Raspberry Pi をゲートウェイとして使用するための準備

Raspberry Pi の Wi-Fi インターネット接続を Ethernet に共有する​

備考

このステップでは、Raspberry Pi が Wi-Fi 経由でインターネットに接続されており、PLC が Ethernet 接続経由で Raspberry Pi に接続されている必要があります。

ここでは、Wi-Fi のインターネット接続を Ethernet に共有するように Raspberry Pi を設定します。Raspberry Pi 上で以下のコマンドを実行してください。

1.(任意)Raspberry Pi を更新します:

sudo apt-get update
sudo apt-get upgrade

2. DHCP クライアントを設定するため、設定ファイルを開きます

sudo vi /etc/dhcpcd.conf

そして、ファイルの末尾に denyinterfaces eth0 を貼り付けます。設定ファイルを閉じます(Esc, :w (Enter), :q (Enter))。

3. 次に、ネットワークインターフェースを開きます

sudo vi /etc/network/interfaces

そして、ファイルの末尾に以下の行を貼り付けます:

auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.66.1
netmask 255.255.255.0
network 192.168.66.0
broadcast 192.168.66.255

ネットワークインターフェースファイルを閉じます(Esc, :w (Enter), :q (Enter))。

4. Ethernet ポートに接続されたすべてのデバイスへ IP アドレスを自動的に割り当てるため、DHCP サービスをインストールして設定します。dnsmasq をインストールし、新しい設定を作成します:

sudo apt-get install dnsmasq
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
sudo vi /etc/dnsmasq.conf

ファイルに以下の行を追加し

interface=eth0
listen-address=192.168.66.1
dhcp-range=192.168.66.50,192.168.66.100,12h
server=8.8.8.8
bind-interfaces
domain-needed
bogus-priv

設定を閉じます(Esc, :w (Enter), :q (Enter))。

5. Raspberry Pi を再起動します。

sudo reboot

その後、SSH 接続を再度開く必要があります。

6. 次に、IPv4 フォワーディングを設定して、Wi-Fi からのインターネット接続を PLC が接続されている Ethernet ポートへ転送します。/etc/systcl.conf file: を開きます

sudo vi /etc/sysctl.conf

以下の行の # を削除してコメント解除します(28 行目):

net.ipv4.ip_forward=1

ファイルを保存して閉じます(Esc, :w (Enter), :q (Enter))。

7. 以下のコマンドを実行して IP フォワーディングを有効化します:

sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

8. 次に、iptables をインストールしてファイアウォールルールを追加します。以下のコマンドを 1 つずつ実行してください:

sudo apt install iptables
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

9. 変更が適用されたことを確認し、ルールを保存します:

sudo iptables -L -n -v
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"

再起動のたびにこれらのルールを自動的に再読み込みするには、/etc/rc.local ファイルを編集します:

sudo vi /etc/rc.local

exit 0 の前に以下の行を貼り付けます:

iptables-restore < /etc/iptables.ipv4.nat

ファイルを保存して閉じます(Esc, :w (Enter), :q (Enter))。

10. ファイアウォール設定を確認するには、以下を実行します

route

ルーティングテーブルは次のように表示されます:

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 192.168.2.1 0.0.0.0 UG 304 0 0 wlan1
192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
192.168.2.0 * 255.255.255.0 U 304

これで、SEW OrchestrationSuite を確認して、ゲートウェイへの接続が確立されているか、および PLC が接続されているかを確認できます。