Skip to main content

シナリオ:VLAN による仮想制御

必要条件

スイッチの設定

重要

デバイスを正しく構成しないと、デバイスにアクセスできなくなる可能性があります。

  1. アダプター(VLAN を定義する必要がある場所)をスイッチに接続します。この例では、2 つの VLAN インターフェースが次のアダプターに追加されています

    enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether f0:b2:b9:11:b8:b3 brd ff:ff:ff:ff:ff:ff
        inet 192.168.2.2/24 brd 192.168.2.255 scope global noprefixroute enp1s0
           valid_lft forever preferred_lft forever
        inet6 fe80::2e96:178c:586a:b97b/64 scope link noprefixroute
           valid_lft forever preferred_lft forever
  2. スイッチの設定インターフェイスを開きます。インターフェイスと認証情報を開く方法については、ベンダーの指示を参照してください。

  3. ログインしたら、VLAN の設定ページを開きます。スイッチが別のプロトコルをサポートしている場合は、以下を選択してください 802.1Q VLAN

  4. Port Config ページで、を設定します。 Link Type 以前に接続したポートの Trunk

  5. すべてのフィールドバスデバイスをスイッチに接続します。

  6. VLAN Config ページで、2 つの新しい VLAN を追加します。この例では、VLAN ID 100 と 200 を使用して作業しています。以前に接続したポートを追加し、次のように設定します。 Trunk 各 VLAN に。フィールドバスデバイスのポートを各 VLAN に追加します

次の設定例では、コントローラからスイッチへの接続がポート 14 で確立されています。 Link Type このポートは、次のように設定されています。 Trunk。フィールドバスデバイスはポート 11 とポート 12 にそれぞれ接続されています

VLAN ID

[説明]

ポート

100

VLAN 100

11, 14

200

VLAN 200

12, 14

VLAN インターフェースの設定

ネットワーク構成に恒久的な変更を加える前に、設定をテストし、必要に応じて変更する必要があります。

  1. タイプの新しいアダプタを作成 VLAN

    コマンドの形式は次のとおりです。

    sudo ip link add link <physical_adapter> name <virtual_adapter_name> type vlan id <vlan_id>

    慣習では、仮想アダプタの名前に VLAN ID を追加します。上記のアダプタとスイッチの設定の場合、コマンドは次のようになります

    sudo ip link add link enp1s0 name enp1s0.100 type vlan id 100

    置換 enp1s0 そして VLAN ID とシステム上の値を指定します。

    今、あなたが走るとき ip a、次のような出力が表示されるはずです。

    enp1s0.100@enp1s0: <BROADCAST,MULTICAST,PROMISC> mtu 1500 qdisc noop state DOWN group default qlen 1000
  2. このコマンドは 2 番目の VLAN に対しても実行します。

構成をテストする

  1. を開きます CODESYS Control SL Deploy Tool そして、コントローラとの接続を確立します。

    詳細については、以下を参照してください。 接続を確立する

  2. に切り替え オペレーション タブをクリックして選択します。 vPLC1 インスタンス。

  3. 右側の構成ビューで、をクリックします Nic と入力し、右端の [...] をクリックします。 _visu_icon_three_dots.png ボタン。

    Nic 設定ダイアログが開きます。

  4. 使用可能なアダプタのリストで、をクリックします。 enp1s0.100 そして選択してください [インスタンスにマッピング] オプション。

  5. 必要に応じて、IP アドレスとネットワークマスクを設定します。ネットワークマスクは CIDR 表記の形式です (例 24)。

    詳細については、以下を参照してください。 https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing

  6. をクリックします OK そして [保存] ボタン。

  7. 選択してください vPLC2 インスタンスを作成し、ステップ 3 ~ 6 を実行します。 enp1s0.200 アダプター。

  8. コントローラーのインスタンスとゲートウェイを起動します。

    詳細については、以下を参照してください。 ランタイム システムの起動

  9. 2 つのインスタンスのそれぞれに小さなアプリケーションをロードして、ネットワークの機能を確認します。詳細については、以下を参照してください。 のダウンロードと起動 CODESYS コントローラ上のアプリケーション

アダプターの構成を永続化する

設定が正しい場合でも、永続的に保存する必要があります。スイッチの設定を永続的に保存する方法については、ベンダーの指示を参照してください。2 つのインスタンスの設定 vPLC1vPLC2 すでに永続化されています。ここでは、以下を設定するだけで済みます オートスタート に設定 はい

次の手順では、コントローラの 2 つの VLAN アダプタを設定して、システムの起動時に使用できるようにする方法について説明します。

重要

これらの設定は、システムに害を及ぼす可能性があります。

  • すべての重要なファイルのバックアップを作成します。

  • 変更を簡単に元に戻すことができるように、事前に変更されたすべてのファイルのコピーを作成してください。

  1. [開く] /etc/network/interfaces エディターで (例: sudo nano /etc/network/interfaces)。

  2. 次の行を追加します (コントローラのアダプタ名と VLAN ID を変更してください)。

    # enp1s0.100 vlan (vPLC1)
    auto enp1s0.100
    iface enp1s0.100 inet dhcp
        vlan-raw-device enp1s0
    # enp1s0.200 vlan (vPLC2)
    auto enp1s0.200
    iface enp1s0.200 inet dhcp
        vlan-raw-device enp1s0

    このファイルの詳細については、以下を参照してください。 https://wiki.debian.org/NetworkConfiguration

  3. システムを再起動するか、コマンドを実行してください sudo systemctl restart networking 変更を適用するためのものです。

注記

この設定方法は Debian 12 でテストされました。設定を永続的に保存するには、お使いのデバイスやオペレーティングシステムに合わせて別の方法を選択する必要があるかもしれません

その他の例はネットプランです (https://netplan.readthedocs.io/en/stable/structure-id/) またはネットワークマネージャ (https://networkmanager.dev/)。コントローラーの適切な説明は、それぞれのマニュアルに記載されています。