IANA port registration
November 4, 2010 5:06 AM   Subscribe

I'm developing new software/hardware in the UK and someone has raised the requirement that I need to register my ports with IANA. Is this a requirement, or best practise?

I have no experience of IANA and this is my first development. The hardware will be sold in the public domain and operate over public networks. Currently I have to put my ports fixed in the range that requires registration and cannot move them.
posted by Jonnykid to Technology (6 answers total) 3 users marked this as a favorite
Absolutely not a requirement. You can send and receive on any port without anybody's permission. There are many protocols not on that list, for example BitTorrent. In the very old days there were a default ranges of ports that the first BT clients used, but they were always configurable, and long ago the client authors figured out that choosing a random port made a lot more sense.

Now, if you ever wanted to submit your protocol for standardization as a draft RFC, then maybe you'd have to think about registering its port, but even then I doubt it's a requirement. That list is really from days of old and has little relevance now.
posted by Rhomboid at 6:26 AM on November 4, 2010

Which fixed range? 0-1023?
posted by beerbajay at 6:27 AM on November 4, 2010

Best answer: See: IANA assigned port-numbers. Registered and Well Known Ports SHOUD NOT be used without IANA registration. But nobody is going to stop you... It's probably a decent idea to go through the hoops to register your special protocol port if you want to follow the rules. On the same line, I would try to make sure I'm not using a registered or well known port that has been registered by somebody else with the IANA. And if you don't register yours, don't come crying when somebody else does, then their protocol has a massive flaw and network people around the world decide to block it. (I'm looking at you: microsoft-ds 445/tcp # Microsoft Naked CIFS)

Also, more work for you... if it's network hardware please implement SNMP and you may need your own OID branch if you have any special features not covered by the standard MIBs. :)
posted by zengargoyle at 6:49 AM on November 4, 2010

Response by poster: Many thanks all, some very useful feedback there. I will definitely be avoiding the "well known" range.
posted by Jonnykid at 7:14 AM on November 4, 2010

No, you don't. 0-1023 are special in that most operating systems require you to be root/admin to use them but other than that, no. Even if you did use something in the admin range, you are still not really required to tell anyone. Basically, if your protocol becomes popular, people will make note of it. Back when the internet was small people did register these things but that was a long, long time ago.

It is, however, a really good idea to make sure your protocol has some sort of initial exchange to IDs that you are using your protocol. Roughly speaking:

"Hello, I'm using Amazing Protocol, version 1.0!"
"Hello, I speak Amazing Protocol, version 1.0 as well! Let's chat using Amazing Protocol, version 1.0!"

And you need to be robust on both ends to clients that don't ID correctly. The old saying is something like "Be specific in what you send, liberal in what you accept." That includes not crashing when accidentally connecting to an alien service.
posted by chairface at 7:56 AM on November 4, 2010

Oh, sure... old and busted. Except for the 205 new registrations this year from the likes of Dropbox, Samsung, NetApp, Dell, Novell, Oracle, Apple, Hughes, Cisco, Google, etc.
posted by zengargoyle at 9:47 AM on November 4, 2010

« Older Pick me, pick me!   |   Solving healthcare one doctor at a time Newer »
This thread is closed to new comments.