About this guide: This is an independent community resource for Dia users. We are not affiliated with the GNOME project or the Dia developers. Dia is free, open-source software released under the GNU GPL.
Network diagrams — LAN layouts, data-center maps, home-lab topologies — are a classic Dia use case. Dia ships with a built-in Network sheet (computers, monitors, routers, switches, hubs), and the free diashapes add-on gives you Cisco-style stencil packs for professional-looking documentation. This tutorial shows you how to build a clean, readable network diagram from scratch, including where the Cisco-style icons really come from (and what they are not).
You will need Dia installed: see our download page or the Linux installation guide (sudo apt install dia on Ubuntu/Debian).
Step 1: Open the Network Sheet
- Launch Dia and open a new canvas.
- In the Toolbox sheet drop-down, select Network.
- You will see objects like Computer, Monitor, Printer, Hub, Switch, Router, Modem, and network cloud symbols.
Step 2: Place Your Devices
- Select the device tool (e.g. Router) and click on the canvas to place it.
- Double-click the device to open Properties and give it a meaningful label: hostname, model, or IP address (e.g.
core-sw-01 · 10.0.0.2). - Place your core infrastructure first (routers, core switches, firewall), then distribution, then access devices and endpoints. Working outside-in keeps the layout logical.
- Keep icon sizes consistent — select multiple devices and resize them together so nothing looks accidentally emphasized.
Step 3: Connect Devices with Links
- Select the Line tool from the Toolbox.
- Click a connection point (small cross) on the first device, then a connection point on the second device. The link glues itself and follows devices if you move them.
- Double-click the link to set its properties: use line color to encode link types (e.g. blue = trunk, green = access, red = WAN/uplink) and add a text label for interface names or speeds (e.g.
Gi0/1 · 1G). - For wireless links, use a dashed line style to distinguish them visually — set this in the line’s Properties dialog.
Step 4: Add Network Context (Clouds, WAN, Internet)
- Use the cloud symbol for the Internet or an external WAN — every network diagram reads better with a clear boundary between “ours” and “theirs”.
- Label subnets near device groups (e.g.
10.0.10.0/24 — Servers) using the Text tool. - Put the legend (what your line colors mean) in a corner of the diagram so future readers — including future you — can decode it.
Step 5: Organize with Layers and Groups
- Open View > Layers (F3). Put physical cabling on one layer and logical overlays (VLANs, IP labels) on another — you can toggle layers to produce a clean physical view and a detailed logical view from the same file.
- To move a rack or a site as one unit, select its devices and use Object > Group. Ungroup with Object > Ungroup when you need to edit inside.
- Enable View > Snap to Grid for tidy, evenly spaced device placement.
Step 6: Document Alongside the Diagram
A diagram alone is rarely enough. Next to (or below) your topology, add a small table of key facts using the Text tool: device hostnames, management IPs, VLAN IDs, and uplink speeds. Dia diagrams export beautifully into documentation — see our export guide for SVG/PDF output that stays sharp in wikis and PDFs.
Cisco-Style Stencils via diashapes (Optional but Recommended)
If the built-in generic icons feel too plain for client-facing documentation:
- Install the free diashapes add-on (version 0.3.0), which can fetch Cisco-style and other community stencil packs.
- Restart Dia, then enable the new sheets via File > Sheets and Objects.
- Rebuild or refresh your diagram with the new icons — connectors and labels work exactly the same.
Full walkthrough: How to Install Custom Shape Libraries in Dia.
Worked Example: Small Office Network
Let’s diagram a 25-person office. Follow along — this is the most common real-world Dia network diagram:
- Internet edge: place a cloud symbol labeled
Internet / ISPat the top, then a firewall box below it labeledFW-01 · 203.0.113.2. - Core: below the firewall, place a core switch
CORE-SW-01. Connect firewall → core switch with a red link labeledUplink · 10G(red = uplink per your legend). - Distribution: add two access switches,
ACC-SW-01(10.0.10.0/24 — Staff) andACC-SW-02(10.0.20.0/24 — Guests). Connect each to the core with blue trunk links. - Endpoints: add a few Computer icons hanging off each access switch with green access links. You don’t need all 25 PCs — draw 2–3 per switch and label the group
… +22 more. - Wireless: add an access-point symbol connected to ACC-SW-01 with a dashed line labeled
Office-WiFi. - Legend + subnets: put your color legend in the bottom-right corner and subnet labels next to each switch.
Export to PDF and you have a network runbook page. When the office grows, you edit the .dia file — never redraw from scratch.
Physical vs. Logical Diagrams
Professionals often maintain two views of the same network, and Dia’s layers make this easy:
- Physical view: where cables actually run — rack positions, cable labels, port numbers. Put this on layer 1.
- Logical view: IP subnets, VLANs, routing relationships — independent of physical location. Put this on layer 2.
- Toggle layers in View > Layers to present the right view to the right audience (technicians vs. architects).
- Keep both in one
.diafile so they can never drift out of sync — the #1 cause of “the diagram lied to me” outages.
Labeling Conventions That Scale
A network diagram with three devices needs no conventions. One with three hundred lives or dies by them. Adopt these early:
- Hostnames:
<role>-<site>-<number>, e.g.core-sw-nyc-01. Never label a device just “Switch”. - Interfaces on links:
Gi0/1 ↔ Gi0/24tells a technician exactly which ports to touch at 2 AM. - Link colors: define once in the legend and never deviate — suggested: red = WAN/uplink, blue = trunk, green = access, dashed gray = wireless.
- IP info: put the management IP under the hostname in smaller text (
10.0.0.2), and subnet labels near device groups. - Dates: add a small “Last updated: 2026-10” text in a corner. An undated network diagram is a rumor, not documentation.
Keeping Diagrams Current
Network diagrams rot faster than any other diagram type — devices get replaced, IPs change, links get upgraded. Build maintenance into the habit:
- One source of truth: keep the
.diafile in the same repo or wiki as your other network docs, not on someone’s laptop. - Review quarterly: put a 15-minute calendar reminder to walk the diagram against reality. Fix drift while it’s small.
- Change the diagram in the same commit as the network change it documents. “I’ll update the diagram later” is how diagrams die.
- Archive, don’t delete: when the network is redesigned, save the old
.diaasnetwork-2025.diabefore redrawing. Old topologies are invaluable during incident forensics.
A Note on Diagram-Driven Troubleshooting
Your network diagram is also a troubleshooting tool. When an outage hits, start at the symptom’s endpoint on the diagram and trace links backward toward the core, checking each hop. Teams that keep an accurate Dia diagram on the wiki resolve “is it the network?” arguments in minutes instead of hours — one more reason the quarterly review habit above pays for itself many times over.
Frequently Asked Questions
Are the Cisco-style shapes in Dia official Cisco icons?
No. Dia’s built-in Network sheet uses generic device symbols. Cisco-style stencils from diashapes are community-created icons inspired by Cisco’s look — useful for internal docs and labs, but not licensed vendor artwork. For official Cisco icons, use Cisco’s own published icon library.
Can I draw wireless network diagrams in Dia?
Yes. There is no dedicated “wireless” sheet, but the convention is simple: use dashed connectors for wireless links and add access-point symbols (available in diashapes packs, or draw a labeled box). Add a legend so readers know dashed = wireless.
How do I draw a server rack diagram?
Use plain rectangles sized proportionally to rack units (1U, 2U), stacked vertically inside a tall rack outline. Label each with hostname and function. Snap-to-grid keeps the units evenly spaced. This is a manual but effective approach.
Can Dia do automatic network discovery / import from a live network?
No — Dia is a drawing tool, not a monitoring tool. You place and connect everything by hand. For auto-discovered topologies, use a network mapper first, then redraw the important parts in Dia for clean documentation.
What is the best export format for network documentation?
SVG for wikis and web docs (scales perfectly), PDF for printable runbooks. PNG works for chat and slides — export at high resolution. Details in our export quality guide.
Where can I get more Dia help?
See our general Dia FAQ for installation, display, and platform issues.
