<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Blog on Portie</title><link>https://portie.dev/blog/</link><description>Recent content in Blog on Portie</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Sun, 19 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://portie.dev/blog/index.xml" rel="self" type="application/rss+xml"/><item><title>Port 3000 Already in Use on Mac: How to Find and Free It</title><link>https://portie.dev/blog/port-3000-already-in-use-mac/</link><pubDate>Sun, 19 Apr 2026 00:00:00 +0000</pubDate><guid>https://portie.dev/blog/port-3000-already-in-use-mac/</guid><description>&lt;p&gt;You start your dev server and immediately see:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Error: listen EADDRINUSE: address already in use :::3000
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Nothing else changed. You didn&amp;rsquo;t start another server. Yet something is holding port 3000 hostage.&lt;/p&gt;
&lt;h2 id="why-this-happens"&gt;Why This Happens&lt;/h2&gt;
&lt;p&gt;Port conflicts usually come from a process that crashed or was force-quit without releasing its socket. When a process exits uncleanly, the macOS kernel keeps the port bound until the process is fully gone or explicitly killed. The socket stays open even though nothing is actively listening on it.&lt;/p&gt;</description></item><item><title>How to See Which App Is Using a Port on Mac</title><link>https://portie.dev/blog/which-app-is-using-port-mac/</link><pubDate>Sat, 18 Apr 2026 00:00:00 +0000</pubDate><guid>https://portie.dev/blog/which-app-is-using-port-mac/</guid><description>&lt;p&gt;You start a server, and it fails with &amp;ldquo;address already in use.&amp;rdquo; You need to know which app is using that port on your Mac, but macOS gives you nothing. No pop-up, no indicator in Finder, no entry in System Settings. The answer lives at the Unix kernel layer, and you have to ask for it directly.&lt;/p&gt;
&lt;h2 id="why-macos-doesnt-tell-you"&gt;Why macOS Doesn&amp;rsquo;t Tell You&lt;/h2&gt;
&lt;p&gt;Finder and System Settings have no concept of open ports. They expose files, volumes, and preferences, but network socket state is handled by the kernel. To see which process has a port bound, you need Terminal or a tool that queries the kernel directly.&lt;/p&gt;</description></item><item><title>What Is Using Port 5000 on Mac? (It's AirPlay Receiver)</title><link>https://portie.dev/blog/port-5000-in-use-mac/</link><pubDate>Fri, 17 Apr 2026 00:00:00 +0000</pubDate><guid>https://portie.dev/blog/port-5000-in-use-mac/</guid><description>&lt;p&gt;You go to start your Flask app (or another dev server that defaults to port 5000) and immediately get:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Error: listen EADDRINUSE: address already in use :::5000
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You didn&amp;rsquo;t start anything else. The culprit is macOS itself.&lt;/p&gt;
&lt;h2 id="airplay-receiver-is-using-it"&gt;AirPlay Receiver Is Using It&lt;/h2&gt;
&lt;p&gt;macOS Monterey (12), released in late 2021, added AirPlay Receiver as a built-in feature. It lets your Mac accept AirPlay streams from an iPhone or another Mac, the same way an Apple TV does.&lt;/p&gt;</description></item><item><title>How to Kill a Process by Port on Mac</title><link>https://portie.dev/blog/kill-process-by-port-mac/</link><pubDate>Thu, 16 Apr 2026 00:00:00 +0000</pubDate><guid>https://portie.dev/blog/kill-process-by-port-mac/</guid><description>&lt;p&gt;You want port 8080 free. You don&amp;rsquo;t care what&amp;rsquo;s using it. You just need it gone. macOS gives you the tools to do this in one Terminal command, once you know the right flags.&lt;/p&gt;
&lt;h2 id="find-the-process-first"&gt;Find the Process First&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;lsof&lt;/code&gt; tells you which process owns a port. The &lt;code&gt;-i&lt;/code&gt; flag filters by network socket, and &lt;code&gt;:PORT&lt;/code&gt; narrows it to a specific port number:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;lsof -i :8080
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Sample output:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 4821 aaron 42u IPv6 0x... 0t0 TCP *:http-alt (LISTEN)
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The PID column is what you need. In this case it&amp;rsquo;s &lt;code&gt;4821&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>macOS Network Utility's Port Scanner Is Gone. Here Are Your Options.</title><link>https://portie.dev/blog/network-utility-port-scanner-alternative/</link><pubDate>Wed, 15 Apr 2026 00:00:00 +0000</pubDate><guid>https://portie.dev/blog/network-utility-port-scanner-alternative/</guid><description>&lt;p&gt;You opened Network Utility to run a quick port scan, and it was not there. macOS Network Utility&amp;rsquo;s port scanner has been gone since macOS Big Sur, released in November 2020. Apple quietly pulled the app, leaving no built-in GUI replacement. The underlying functionality still exists, but you now have to reach for Terminal or a third-party tool to get to it.&lt;/p&gt;
&lt;h2 id="what-the-port-scanner-did"&gt;What the Port Scanner Did&lt;/h2&gt;
&lt;p&gt;Network Utility had a Port Scan tab. You entered a hostname or IP address and an optional port range (for example, 1 through 1024), clicked Scan, and the app listed every open port it found. No commands, no flags, no syntax to memorize.&lt;/p&gt;</description></item><item><title>Common Ports and What They're Used For</title><link>https://portie.dev/blog/common-ports-and-their-applications/</link><pubDate>Tue, 14 Apr 2026 00:00:00 +0000</pubDate><guid>https://portie.dev/blog/common-ports-and-their-applications/</guid><description>&lt;p&gt;Every network service uses a port number so the OS knows which process receives incoming data. When you see an unfamiliar port in a port monitor or firewall log, knowing the common assignments saves you from guessing. This post is a reference for the most common port numbers grouped by category. &lt;a href="https://portie.dev/"&gt;Portie&lt;/a&gt; shows process names alongside port numbers in its live view; the paid remote scanner ($8.99) labels service names automatically.&lt;/p&gt;</description></item><item><title>What Are Ephemeral Ports? Why Your Mac Has So Many Open</title><link>https://portie.dev/blog/ephemeral-ports-mac/</link><pubDate>Mon, 13 Apr 2026 00:00:00 +0000</pubDate><guid>https://portie.dev/blog/ephemeral-ports-mac/</guid><description>&lt;p&gt;You open a port monitor and see dozens of ports in the 50000+ range. They weren&amp;rsquo;t there yesterday. Some appear and disappear every few seconds. None of them match anything you recognise as a running service. Here&amp;rsquo;s what they are.&lt;/p&gt;
&lt;h2 id="what-ephemeral-ports-are"&gt;What Ephemeral Ports Are&lt;/h2&gt;
&lt;p&gt;Ephemeral ports are also called dynamic or temporary ports. The IANA-designated range is 49152-65535.&lt;/p&gt;
&lt;p&gt;Your Mac assigns them automatically for the outgoing (client) side of TCP and UDP connections. Every time an app opens a connection to a remote server, macOS picks a random unused port from this range for your side of the connection. When the connection closes, the port is released and becomes available again.&lt;/p&gt;</description></item></channel></rss>