ChatGPT-4oにネットワーク構成図をお願いしてみた話
ChatGPTでネットワーク構成図を作れるって知ってましたか?
この記事では、ChatGPT-4oを使って、構成情報の整理からテキスト構成図、Mermaid形式、さらに画像生成まで試してみた実例を紹介します。
「初動整理をAIに任せたい」「構成図をチームにサッと共有したい」という方におすすめの内容です。
ネットワーク構成図を作るのって、意外とめんどうだったりしませんか? 今回試したのは ChatGPT-4o です。 ChatGPTに「構成図を描く準備を手伝って」とお願いしてみたところ、かなりスムーズに作業が進みました。複雑な構成は難しいものの、機器同士の接続図であれば十分に活用できる印象を持ちました。 この記事では、そのやりとりと、テキスト構成図/Mermaid形式の変換まで紹介します。
Contents
どんな情報が必要?ChatGPTに聞いてみた
最初にChatGPTにこう聞いてみました。
ネットワーク構成図を書きたいです。どんな情報を出せばいいでしょう?🤔
すると、以下のようなリストが返ってきました。
構成図を作るには、以下の情報を教えてください:
1. ネットワークに含まれる機器とその種類(PC、ルータ、スイッチ、サーバなど)
2. 各機器の接続関係(どのポート同士がつながっているか)
3. IPアドレスやVLANの情報(分かる範囲でOK)
4. ネットワークの目的(例:社内LAN、学習用など)
5. 通信の流れや想定される利用状況
6. セグメント分けやゾーニング(DMZなど)
7. 出力形式の希望(テキストか図形式か)
8. 特定の記号や表記ルールの希望があれば、それも教えてください
このように、ChatGPTが「構成図を描くために整理すべきポイント」を具体的に教えてくれるのがとても助かります。
実際に情報を出してみた(物理構成)
今回は物理構成図(テキスト形式)を作りたかったので、以下のように情報を整理して渡しました。🤔
PC1 eth0 --- L2SW1 port1
PC2 eth0 --- L2SW1 port2
DNS Server eth0 --- L2SW1 port11
DNS Server eth0 --- L2SW1 port12
L2SW1 port24 --- R1 port10
R1 port1 --- Internet
ChatGPTはこの情報を受け取って、まず以下のようなテキスト構成図を提示してくれました。
ChatGPTが作ってくれた構成図(テキスト形式)
+----------------+
| Internet |
+--------+-------+
|
| R1 port1
+--------+--------+
| R1 |
| (Router) |
+--------+--------+
| port10
+--------+--------+
| L2SW1 |
| (Layer2 Switch) |
+----------+----+----+----------+----------+
| | | | | |
port1 port2 port11 port12 port24 ...
| | | | |
PC1 PC2 DNS1 DNS2 R1 port10
この図を見て「まずはここまでできるのか」と驚いたのですが、若干間違っているものの、さらに便利だったのが次のステップです。(ポートが片方しかないのは NG😅)
この後、別の聞き方でもMermaid形式を試してみました。
Mermaid形式に変換してもらった
「この図をMermaidで書きたい」と頼んでみると、ChatGPTはGitHub Issueにも貼れるようなMermaid形式に変換してくれました。GitHub Issueの場合は、“`mermaidで括るのがポイントです。
graph TD
Internet[Internet]
R1[Router R1]
L2SW1[Switch L2SW1]
PC1[PC1]
PC2[PC2]
DNS1[DNS Server]
DNS2[DNS Server]
Internet -->|port1| R1
R1 -->|port10| L2SW1
L2SW1 -->|port1| PC1
L2SW1 -->|port2| PC2
L2SW1 -->|port11| DNS1
L2SW1 -->|port12| DNS2


⚠️補足:当初は「L2SW1 port24」 をノードとして追加していたが、それではL2スイッチが2台あるように見えてしまったため、ポート情報はエッジのラベルとして整理。
⚠️補足
実は最初エラー出たけど、貼り付けたらすぐに修正しました。上記をGitHub Issueに貼り付けたらエラーになりました。直して下さい。
Unable to render rich display
Parse error on line 7: …] DNS1[DNS Server (port11)] DNS2[DNS ———————-^ Expecting ‘SQE’, ‘DOUBLECIRCLEEND’, ‘PE’, ‘-)’, ‘STADIUMEND’, ‘SUBROUTINEEND’, ‘PIPE’, ‘CYLINDEREND’, ‘DIAMOND_STOP’, ‘TAGEND’, ‘TRAPEND’, ‘INVTRAPEND’, ‘UNICODE_TEXT’, ‘TEXT’, ‘TAGSTART’, got ‘PS’
ただ、よくよく見るとポート番号がすべて入っているわけではなく、構成図としては情報が足りない状態です。これではネットワーク構成図として正確に読み取るのは厳しい場面もあります。
また、ポート番号がノード名に含まれていると、それが別の機器として扱われてしまい、構成図に誤解を生む原因になります。特にMermaidでは、ノード名に括弧やカンマ、スペースがあるとエラーや予期せぬ表示になることが多いため、ポート情報はラベルにとどめたほうが無難です。
ポート番号を省いて試してみた
さらに以下のようなシンプルな接続情報でMermaid図を依頼してみました。csv形式です。
以下の接続をMermaid形式にしてもらえますか?
R1,Internet
L2SW1,R1
PC1,L2SW1
PC2,L2SW1
DNS Server,L2SW1
DNS Server,L2SW1
このような形式でも、ChatGPTは正しく解釈して構成図にしてくれます。
graph TD
Internet[Internet]
R1[Router R1]
L2SW1[Switch L2SW1]
PC1[PC1]
PC2[PC2]
DNS1[DNS Server 1]
DNS2[DNS Server 2]
Internet --> R1
R1 --> L2SW1
L2SW1 --> PC1
L2SW1 --> PC2
L2SW1 --> DNS1
L2SW1 --> DNS2

⚠️補足:DNS Server が2回登場しているため、自動的に DNS1 / DNS2 として別ノード扱いされました(1台で2ポート接続なら明示すべき) また、ノード名にカンマが含まれていたり、括弧があるとエラーになる場合があるため、シンプルな命名にした方が安全です。
このような試行錯誤を通じて、Mermaid形式でも意外と多様なアプローチが可能だと実感しました。
- ホスト名ベースなら有効:接続情報が「ホスト名のみ」であれば、構成図として十分使える
- ポート番号を含めると厳しい:ノード名にポート番号を入れると、構文エラーや誤解釈の原因になりやすい
- 共有にはちょうどいい:テキストベースでも、サッとチーム内に構成イメージを共有したいときに有効
- Mermaidは資料にも使えそう:見やすく整えれば、そのまま技術資料やGitHubにも使える可能性あり
ChatGPTは、構成の初動整理や簡易図の作成において、思った以上に頼りになる存在でした。
テキスト形式の構成図(ポート番号なし)も試してみた
さらにシンプルな接続情報を使って、テキスト形式のネットワーク構成図も依頼してみました。
以下の接続をテキスト形式のネットワーク構成図にしてもらえますか?
R1,Internet
L2SW1,R1
PC1,L2SW1
PC2,L2SW1
DNS Server,L2SW1
DNS Server,L2SW1
ChatGPTはこれに対して、以下のような出力をしてくれました。
+----------------+
| Internet |
+--------+-------+
|
+--------+--------+
| R1 |
| (Router) |
+--------+--------+
|
+--------+--------+
| L2SW1 |
| (Layer2 Switch) |
+----------+----+----+----------+----------+
| | | | | |
PC1 PC2 DNS1 DNS2 .
最後に画像生成も試してみた
以下のネットワーク構成図を画像で生成できますか?
R1,Internet
L2SW1,R1
PC1,L2SW1
PC2,L2SW1
DNS Server,L2SW1
DNS Server,L2SW1

この構成図は、他の人への説明資料としても十分使えるクオリティでした。
おまけ
Gemini 2.5 flashでも同じ内容を聞いてました。こちらは、、、まだまだでした。。

指示の仕方を変えるとうまくいく?(テキスト形式)
以下の通りに指示を変えてもたらポート番号もうまく表記できました。もう少し条件を加えてみました。
以下の接続をテキスト形式のネットワーク構成図にしてもらえますか?
#
・上から下に通信順(Internet → R1 → L2SW1 → 各デバイス)で並べてください
・ポート名は「R1 Port1」のような書き方ではなく、**単に「Port番号」のみで表記**してください(例:Port0, Port1…)
・スイッチ部分は横長にし、ポートが左右に分かれて見えるようにしてください
・各接続機器(PCやDNS Server)のインタフェース名は「eth0」「eth1」のように明記してください
・図は縦方向に流れるように整理してください
#
Internet - R1 Port0
R1 Port1 - L2SW1 Port24
L2SW1 Port1 - PC1 eth0
L2SW1 Port2 - PC2 eth0
L2SW1 Port3 - DNS Server1 eth0
L2SW1 Port4 - DNS Server2 eth1
結果は以下の通りになりました。まあまあ見られますよね。
+----------------+
| Internet |
+--------+-------+
|
Port0
+--------+--------+
| R1 |
| (Router) |
+--------+--------+
Port1
|
Port24
|
+---------------+---------------+
| L2SW1 |
| (Layer2 Switch) |
+----+----------+----------+----+
| | |
Port1 Port2 Port3
| | |
eth0 eth0 eth0
PC1 PC2 DNS Server1
Port4
|
eth1
DNS Server2
まとめ:AIで構成図を作るのは「まだこれから」だけど、活用の余地はある
ChatGPTと一緒にネットワーク構成図を作るのは、ある程度までは効率的でした。特に「ホスト名ベースでざっくり共有したいとき」は有効です。
ただし、ポート番号を含めた正確な構成になると、まだ人の補正が必要です。とはいえ、最初の整理や資料のたたき台としては十分実用的。
このあと、論理構成図やVLAN設計付きの図も試しながら、どこまでAIに任せられるかを引き続き検証していきます。
※ 本記事で紹介した内容は、ChatGPTの回答をベースにしています。重要な構成や実装の前には、必ずご自身で確認・検証を行ってください。