I can't see if anybody answered yet on this, but here are my two cents:
Do you have a firewall going? Then it may stop you from connecting, not sure how it looks like when setting up a listen socket though.
Only root user may open ports below a certain number, don't remember where it starts, but look it up.
Try the sudo in front as with netstat?
I also don't remember how the tcp server works, maybe it should block on listen - until somebody connects (and here the firewall may block that)? That is common in other servers, I think:
Listen
Somebody connects
Accept connection
"fork off" that connection on another socket/port, have it run in a separate thread
Go back to Listen to handle multiple requests/connections concurrently
Hope it helps some,
Hans