<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Macvlan on KnightLiブログ</title>
        <link>https://knightli.com/ja/tags/macvlan/</link>
        <description>Recent content in Macvlan on KnightLiブログ</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>ja</language>
        <lastBuildDate>Fri, 05 Jun 2026 15:58:26 +0800</lastBuildDate><atom:link href="https://knightli.com/ja/tags/macvlan/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>Synology DSM 7.3 Container Manager の複数 NIC と Macvlan 設定</title>
        <link>https://knightli.com/ja/2026/06/05/synology-dsm-container-manager-multi-nic-macvlan/</link>
        <pubDate>Fri, 05 Jun 2026 15:58:26 +0800</pubDate>
        
        <guid>https://knightli.com/ja/2026/06/05/synology-dsm-container-manager-multi-nic-macvlan/</guid>
        <description>&lt;p&gt;Synology DSM 7.3 と DSM 7.2 に付属する Container Manager の GUI は、標準では主に &lt;code&gt;bridge&lt;/code&gt; と &lt;code&gt;host&lt;/code&gt; ネットワークを扱います。NAS に複数の NIC があり、たとえば LAN1 は内部ネットワーク、LAN2 は別ルーターや別サブネットに接続している場合、一部のコンテナだけを LAN2 経由にしたい、または LAN2 のサブネット上で独立した IP を持たせたいことがあります。この場合は Docker の &lt;code&gt;macvlan&lt;/code&gt; ネットワークを使うのが一般的です。&lt;/p&gt;
&lt;p&gt;よくある構成は次の 2 つです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;コンテナを特定の物理 NIC にひも付け、そのサブネット上の独立 IP を割り当てる；&lt;/li&gt;
&lt;li&gt;コンテナを既定の &lt;code&gt;bridge&lt;/code&gt; ネットワークと、特定 NIC の &lt;code&gt;macvlan&lt;/code&gt; ネットワークの両方に接続する。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;以下では、2 枚目の NIC を &lt;code&gt;ovs_eth1&lt;/code&gt;、LAN2 のサブネットを &lt;code&gt;192.168.2.0/24&lt;/code&gt; として説明します。実際には自分のネットワーク、ゲートウェイ、インターフェース名に合わせて変更してください。&lt;/p&gt;
&lt;h2 id=&#34;まず物理インターフェース名を確認する&#34;&gt;まず物理インターフェース名を確認する
&lt;/h2&gt;&lt;p&gt;DSM で SSH を有効にし、NAS にログインして次を実行します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ifconfig
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Open vSwitch が有効な場合、インターフェース名は通常 &lt;code&gt;ovs_eth0&lt;/code&gt;、&lt;code&gt;ovs_eth1&lt;/code&gt; のようになります。Virtual Machine Manager をインストール済みの環境では、多くの場合 Open vSwitch が自動的に有効になっています。&lt;/p&gt;
&lt;p&gt;Open vSwitch が有効でない場合は、通常 &lt;code&gt;eth0&lt;/code&gt;、&lt;code&gt;eth1&lt;/code&gt; のような名前です。&lt;/p&gt;
&lt;p&gt;以降の例では、2 枚目の NIC として &lt;code&gt;ovs_eth1&lt;/code&gt; を使います。Open vSwitch を使っていない環境では、実際に表示された &lt;code&gt;eth1&lt;/code&gt; などの名前に置き換えてください。&lt;/p&gt;
&lt;h2 id=&#34;シナリオ-1指定-nic-のサブネットで独立-ip-を使う&#34;&gt;シナリオ 1：指定 NIC のサブネットで独立 IP を使う
&lt;/h2&gt;&lt;p&gt;これは最もよく使う構成です。Pi-hole、AdGuard Home、ダウンローダー、ゲートウェイ系サービスなどに向いています。目的は、コンテナを LAN2 サブネット上に直接見えるようにし、物理デバイスに近い形で IP を持たせることです。&lt;/p&gt;
&lt;p&gt;Container Manager の GUI から &lt;code&gt;macvlan&lt;/code&gt; ネットワークを直接作成することはできないため、最初に SSH で一度だけ作成します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo docker network create -d macvlan &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --subnet&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;192.168.2.0/24 &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --gateway&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;192.168.2.1 &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --ip-range&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;192.168.2.200/29 &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -o &lt;span class=&#34;nv&#34;&gt;parent&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;ovs_eth1 &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  custom_lan2_net
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;各パラメータの意味は次のとおりです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-d macvlan&lt;/code&gt;：&lt;code&gt;macvlan&lt;/code&gt; ドライバーを使う；&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--subnet=192.168.2.0/24&lt;/code&gt;：LAN2 の全体サブネット；&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--gateway=192.168.2.1&lt;/code&gt;：LAN2 のゲートウェイ。通常はルーターの IP；&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--ip-range=192.168.2.200/29&lt;/code&gt;：Docker が割り当て可能な IP 範囲を制限し、スマートフォン、PC、テレビなどとの衝突を避ける；&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-o parent=ovs_eth1&lt;/code&gt;：どの物理 NIC にひも付けるかを指定する；&lt;/li&gt;
&lt;li&gt;&lt;code&gt;custom_lan2_net&lt;/code&gt;：この Docker ネットワークの名前。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;作成後、DSM の Container Manager を開き、左側の「ネットワーク」ページに入ると &lt;code&gt;custom_lan2_net&lt;/code&gt; が表示されます。以後は GUI で既存コンテナをこのネットワークへ追加したり、新規コンテナ作成時に選択して固定 IP を指定したりできます。&lt;/p&gt;
&lt;h2 id=&#34;シナリオ-2コンテナを複数ネットワークに同時接続する&#34;&gt;シナリオ 2：コンテナを複数ネットワークに同時接続する
&lt;/h2&gt;&lt;p&gt;一部のコンテナは複数ネットワークに同時に存在する必要があります。たとえば、Synology ホストから既定の &lt;code&gt;bridge&lt;/code&gt; ネットワーク経由でアクセスできる一方で、LAN2 上にも独立した物理サブネット IP を持たせたい場合です。この場合、コンテナに 2 つの仮想 NIC を持たせます。&lt;/p&gt;
&lt;h3 id=&#34;方法-agui-でネットワークを追加する&#34;&gt;方法 A：GUI でネットワークを追加する
&lt;/h3&gt;&lt;p&gt;まず通常どおりコンテナを作成し、既定の &lt;code&gt;bridge&lt;/code&gt; など主ネットワークを 1 つ選びます。作成後はまだ起動しないでください。すでに起動している場合は停止します。&lt;/p&gt;
&lt;p&gt;次に Container Manager の「ネットワーク」ページを開き、作成済みの &lt;code&gt;custom_lan2_net&lt;/code&gt; を選択して「管理」をクリックします。一覧で対象コンテナにチェックを入れて保存します。コンテナ起動後、内部には通常 &lt;code&gt;eth0&lt;/code&gt; と &lt;code&gt;eth1&lt;/code&gt; の 2 つの仮想インターフェースが表示されます。&lt;/p&gt;
&lt;p&gt;この方法は、1 つか 2 つのコンテナを手軽に設定したい場合に向いており、Compose ファイルを編集する必要もありません。&lt;/p&gt;
&lt;h3 id=&#34;方法-bdocker-compose-のプロジェクトを使う&#34;&gt;方法 B：Docker Compose のプロジェクトを使う
&lt;/h3&gt;&lt;p&gt;Container Manager の「プロジェクト」機能を使う場合は、&lt;code&gt;docker-compose.yml&lt;/code&gt; で複数ネットワークを定義できます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;15
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;16
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;17
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;18
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;19
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-yaml&#34; data-lang=&#34;yaml&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;version&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;3.8&amp;#39;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;services&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;my_node&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;nginx:latest&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;container_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;multi_nic_container&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;networks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;default_bridge&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;ipv4_address&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;m&#34;&gt;172.20.0.10&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;lan2_macvlan&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;        &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;ipv4_address&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;m&#34;&gt;192.168.2.205&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;networks&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;default_bridge&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;external&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;bridge&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;lan2_macvlan&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;external&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;true&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;custom_lan2_net&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;ここで &lt;code&gt;custom_lan2_net&lt;/code&gt; は、前述の SSH コマンドで作成した &lt;code&gt;macvlan&lt;/code&gt; ネットワークです。&lt;code&gt;bridge&lt;/code&gt; は Synology に標準で用意されている Docker の既定ブリッジネットワークを参照します。&lt;/p&gt;
&lt;p&gt;なお、例の &lt;code&gt;172.20.0.10&lt;/code&gt; は、あなたのブリッジネットワークが本当にそのサブネットを使っている場合にだけ有効です。一般的な Synology Docker の既定 &lt;code&gt;bridge&lt;/code&gt; は &lt;code&gt;172.17.0.0/16&lt;/code&gt; であることが多いため、実際の値は &lt;code&gt;docker network inspect bridge&lt;/code&gt; で確認してください。&lt;/p&gt;
&lt;h2 id=&#34;macvlan-ではホストとコンテナが直接通信できないことがある&#34;&gt;Macvlan ではホストとコンテナが直接通信できないことがある
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;macvlan&lt;/code&gt; には重要な制限があります。Linux カーネルは既定で、ホストが同じ &lt;code&gt;macvlan&lt;/code&gt; インターフェース経由でコンテナへ直接通信することを許可しません。&lt;/p&gt;
&lt;p&gt;つまり、コンテナが &lt;code&gt;custom_lan2_net&lt;/code&gt; にだけ参加している場合、DSM 自体は LAN2 の物理サブネット IP を使ってそのコンテナにアクセスできないことがあります。逆方向も同様です。&lt;/p&gt;
&lt;p&gt;よく使われる対処は次の 2 つです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;コンテナを既定の &lt;code&gt;bridge&lt;/code&gt; ネットワークにも参加させ、Synology からは Docker 内部アドレス経由でアクセスする；&lt;/li&gt;
&lt;li&gt;Synology 側にホスト用の &lt;code&gt;macvlan&lt;/code&gt; サブインターフェースを追加し、ホストも同じ &lt;code&gt;macvlan&lt;/code&gt; 通信ドメインに参加させる。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;後者はネットワーク設計に近く、保守コストも高くなります。家庭や小規模オフィスでは、「&lt;code&gt;bridge&lt;/code&gt; + &lt;code&gt;macvlan&lt;/code&gt;」の二重ネットワーク構成のほうが扱いやすいです。&lt;/p&gt;
&lt;h2 id=&#34;ip-衝突は事前に避ける&#34;&gt;IP 衝突は事前に避ける
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;macvlan&lt;/code&gt; を使うと、コンテナの IP は物理 LAN 上に直接現れます。そのため DHCP プールとの衝突を避ける必要があります。&lt;/p&gt;
&lt;p&gt;可能であれば、メインルーターで Docker 用の範囲を DHCP から除外してください。たとえば &lt;code&gt;192.168.2.200/29&lt;/code&gt; を Docker に使うなら、ルーターが &lt;code&gt;192.168.2.200&lt;/code&gt; から &lt;code&gt;192.168.2.207&lt;/code&gt; をスマートフォン、PC、その他の機器へ配らないようにします。&lt;/p&gt;
&lt;p&gt;ルーター側で DHCP 除外を設定しにくい場合でも、自動割り当てされにくい高めのアドレス範囲を使い、記録を残しておくべきです。&lt;/p&gt;
&lt;h2 id=&#34;open-vswitch-を有効にする方法&#34;&gt;Open vSwitch を有効にする方法
&lt;/h2&gt;&lt;p&gt;DSM 7.x では、Open vSwitch は GUI から有効にできます。低レベルの設定ファイルを手動で触る必要はありません。最も簡単なのは Synology 公式の Virtual Machine Manager をインストールする方法です。仮想マシンのネットワークブリッジは Open vSwitch に依存しているため、セットアップウィザードが有効化を案内します。&lt;/p&gt;
&lt;p&gt;手順は次のとおりです。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;DSM の「パッケージセンター」を開く；&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Virtual Machine Manager&lt;/code&gt; を検索してインストールする；&lt;/li&gt;
&lt;li&gt;パッケージを開き、ウィザードに従って Open vSwitch を有効にする；&lt;/li&gt;
&lt;li&gt;ネットワークサービスの再起動を待つ。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;VMM を入れたくない場合は、コントロールパネルから手動で有効にできます。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;「コントロールパネル」を開く；&lt;/li&gt;
&lt;li&gt;「ネットワーク」に入る；&lt;/li&gt;
&lt;li&gt;「ネットワークインターフェース」タブに切り替える；&lt;/li&gt;
&lt;li&gt;「管理」をクリックし、「Open vSwitch 設定」を選ぶ；&lt;/li&gt;
&lt;li&gt;「Open vSwitch を有効にする」にチェックを入れて適用する。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;適用後、DSM は NIC を再初期化するため、ブラウザー接続が数秒切れることがあります。NAS が大きなファイルを転送中、または重要な書き込み処理中のタイミングでは避けてください。&lt;/p&gt;
&lt;h2 id=&#34;open-vswitch-が有効か確認する&#34;&gt;Open vSwitch が有効か確認する
&lt;/h2&gt;&lt;p&gt;GUI では、「コントロールパネル -&amp;gt; ネットワーク -&amp;gt; ネットワークインターフェース」に戻って NIC の状態を確認します。管理メニューにも Open vSwitch 関連の設定が表示されます。&lt;/p&gt;
&lt;p&gt;コマンドラインでは、再度次を実行します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ifconfig
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;または：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ip addr
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;code&gt;ovs_eth0&lt;/code&gt;、&lt;code&gt;ovs_eth1&lt;/code&gt; のようなインターフェースが見えれば、Open vSwitch は有効です。その後 &lt;code&gt;macvlan&lt;/code&gt; ネットワークを作成するときは、&lt;code&gt;-o parent=&lt;/code&gt; に &lt;code&gt;ovs_&lt;/code&gt; プレフィックス付きの名前を指定します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;-o &lt;span class=&#34;nv&#34;&gt;parent&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;ovs_eth1
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;ここを &lt;code&gt;eth1&lt;/code&gt; のままにすると、Docker コンテナが期待した NIC 経由で通信できないことがあります。&lt;/p&gt;
&lt;h2 id=&#34;設定前のチェックリスト&#34;&gt;設定前のチェックリスト
&lt;/h2&gt;&lt;p&gt;実際に作業する前に、次を確認しておくと安全です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Synology NAS に物理 NIC が何枚あり、どのポートにケーブルが接続されているか；&lt;/li&gt;
&lt;li&gt;各ポートがどのスイッチ、ルーター、VLAN に接続されているか；&lt;/li&gt;
&lt;li&gt;対象 NIC が DSM 上で &lt;code&gt;ethX&lt;/code&gt; と表示されるか、&lt;code&gt;ovs_ethX&lt;/code&gt; と表示されるか；&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--subnet&lt;/code&gt; と &lt;code&gt;--gateway&lt;/code&gt; が対象 NIC のサブネットに属しているか；&lt;/li&gt;
&lt;li&gt;&lt;code&gt;--ip-range&lt;/code&gt; が DHCP プールから除外されているか；&lt;/li&gt;
&lt;li&gt;コンテナへ Synology ホストからアクセスする必要があるか。必要なら &lt;code&gt;bridge&lt;/code&gt; にも参加させる。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;インターフェース名、サブネット、IP プールが正しければ、DSM 7.3 の Container Manager は &lt;code&gt;macvlan&lt;/code&gt; と組み合わせて複数 NIC のコンテナ構成を十分に扱えます。日常管理は GUI で行い、SSH は下位ネットワークを作成する場面だけで済みます。&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
