diff options
| author | Collin Williams <96917990+bluedragon1221@users.noreply.github.com> | 2026-09-19 21:13:32 -0500 |
|---|---|---|
| committer | Collin Williams <96917990+bluedragon1221@users.noreply.github.com> | 2026-09-19 21:13:32 -0500 |
| commit | b6f7b9dda8cd2e4b1c5b006ad5866d3ef7e62310 (patch) | |
| tree | cea3af7c287c28fcaf379ec3700f0aa76223e244 /net.html | |
| parent | ffd6abb1403d85b61c80fc8d23a3a04df8895c20 (diff) | |
inserting link:css via javascript was a bad idea
Diffstat (limited to 'net.html')
| -rw-r--r-- | net.html | 42 |
1 files changed, 31 insertions, 11 deletions
@@ -1,13 +1,25 @@ <!DOCTYPE html> <html> <head> + <meta charset="UTF-8"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <link rel="icon" href="static/Logo.svg" type="image/svg+xml"> + <link rel="stylesheet" href="article.css"> + <title>Minimal Laptop Networking with NixOS</title> - <meta property="article:published_time" content="2026-07-29"> - <script src="article.js"></script> </head> <body> - <article> - <header></header> + <article class="markdown-body"> + <header> + <div class="header-top"> + <a href="writing.html" class="header-logo-link"></a> + <div class="header-info"> + <h1>Minimal Laptop Networking with NixOS</h1> + <time datetime="2026-07-29">Published Jul 07, 2026</time> + </div> + </div> + <hr> + </header> <p> The default networking stack on NixOS uses NetworkManager. @@ -19,9 +31,17 @@ If you're configuring a server, you probably don't need iwd at all; systemd-networkd and systemd-resolved are usually sufficient. </p> - <div id="toc"></div> + <h2>Table of Contents</h2> + <ul> + <li><a href="#overview">The default stack</a></li> + <li><a href="#iwd">iwd</a></li> + <li><a href="#networkd">systemd-networkd</a></li> + <li><a href="#resolved">systemd-resolved</a></li> + <li><a href="#captiveportal">P.S. Captive portals</a></li> + <li><a href="#nm-applet">P.P.S. I miss nm-applet</a></li> + </ul> - <h2>The default stack</h2> + <h2 id="overview">The default stack</h2> <p>If not configured otherwise, NixOS uses the following stack:</p> <ul> <li>NetworkManager for wifi</li> @@ -54,7 +74,7 @@ <p>And let's get to configuring!</p> - <h2>iwd</h2> + <h2 id="iwd">iwd</h2> <p> First up is iwd. The important parts of the configuration are delegating network configuration to networkd, delegating name resolution (DNS) to resolved, and configuring MAC randomization for some extra privacy. @@ -82,7 +102,7 @@ <li><code><kw>iwctl</kw> <prop>station</prop> <prop>wlan0</prop> <prop>connect</prop> <str>"<SSID>"</str></code>: connects to the network, prompting for a PSK if necessary</li> </ul> - <h2>systemd-networkd</h2> + <h2 id="networkd">systemd-networkd</h2> <p> Next up is systemd-networkd. Networkd has lots of advanced options for things like static IP config, Wireguard tunnels, VLANs, domain-based DNS routing, and more. @@ -123,7 +143,7 @@ <li><code><kw>networkctl</kw> <prop>status</prop></code>: make sure there's no significant errors in the logs.</li> </ul> - <h2>systemd-resolved</h2> + <h2 id="resolved">systemd-resolved</h2> <p> Now all we have left is DNS configuration, then we're done. This is probably the part where you can nerd out the hardest, but I try to keep it pretty minimal. @@ -152,7 +172,7 @@ <p>You can verify your DNS configuration by using the <code><kw>resolvectl</kw> <prop>status</prop></code> command or by just opening a website.</p> - <h2>P.S. Captive portals</h2> + <h2 id="captiveportal">P.S. Captive portals</h2> <p> Captive portals are those wifi login pages that pop up when you connect to some public wifi networks. Some captive portals don't behave correctly when you're using an encrypted third-party DNS server instead of the network's advertised resolver. @@ -162,7 +182,7 @@ Pretty neat! </p> - <h2>P.P.S. I miss nm-applet</h2> + <h2 id="nm-applet">P.P.S. I miss nm-applet</h2> <p> Probably the biggest downside to this setup is the lack of desktop integration. GNOME and Plasma only support NetworkManager in their network configuration menu, so you're kinda out of luck. |
