<p>A fixed external port is used so that other clients on the internet can connect to your client by knowing only your IP address. They will use the fixed port number to connect.</p>

<p>If you have multiple clients behind a NAT device, then only one client will be able to negotiate with the NAT device to listen on port 8333 (and have incoming connections translated to its client address).</p>

<p>Note that the above assumes the clients actually are behind a NAT devices (which is very common, especially in home networking setups). If instead the router is really just a router and not a NAT device, then each client behind the router will have its own <em>public</em> IP address, and there won't be any conflict between more than one of them listening at the same time on port 8333.</p>

CC BY-SA 3.0
2014-02-12T12:47:38.783Z
Is there a viable solution for having multiple clients behind the same NAT? Can the satoshi client peer advertise itself with another port if required?
LordOfThePigs
CC BY-SA 3.0
2014-02-12T15:54:14.393Z
@LordOfThePigs Yes, you can change the listen port.  Specify 'port=nnnnn' in bitcoin.conf to use another port.
ScripterRon
CC BY-SA 3.0
2014-02-12T08:23:47.817Z
2014-02-12T08:23:47.817Z
Greg Hewgill
<p>Why satoshi client's UPnP part maps to a fixed external port (8333 by default)?
If there are multiple clients behind the NAT router, won't there be a conflict?</p>

CC BY-SA 3.0
2014-02-12T06:08:56.167Z
Doesn't a router route to specific ip addresses? So multiple clients behind a router won't be a problem unless they have conflicting ip addresses.
John T
CC BY-SA 3.0
2014-02-12T06:16:04.097Z
They have different internal IP, but may have the same external IP.
updogliu
CC BY-SA 3.0
2014-02-12T06:23:25.560Z
A router runs connection tracking software to make sure all connected in the network get differentiated.
John T
CC BY-SA 3.0
2014-02-12T06:31:24.503Z
I don't understand. If a peer from outside want to connect (external_ip, 8333), how can the router tell which internal ip should it forward to?
updogliu
CC BY-SA 3.0
2014-02-12T06:54:40.027Z
It's a [long Wikipedia article](http://en.wikipedia.org/wiki/Network_address_translation) on how exactly it's done but it's done in the same way you can browse (port 80) on the internet on two computer without loading pages another computer loads.
John T
CC BY-SA 3.0
2014-02-12T15:33:09.647Z
We are talking about if there are two servers behind that 80 port, and using the same external IP, can how can a client specify which server it want to talk with?
updogliu
<network>
Why satoshi client's UPnP part maps to a fixed external port (8333 by default)?
updogliu
# Why satoshi client's UPnP part maps to a fixed external port (8333 by default)?

(Asked by: username_0 on 2014-02-12)

Why satoshi client's UPnP part maps to a fixed external port (8333 by default)?
If there are multiple clients behind the NAT router, won't there be a conflict?

**Tags:** network

> **Comments:**
> **username_1**: Doesn't a router route to specific ip addresses? So multiple clients behind a router won't be a problem unless they have conflicting ip addresses.  
> **username_0**: They have different internal IP, but may have the same external IP.  
> **username_1**: A router runs connection tracking software to make sure all connected in the network get differentiated.  
> **username_0**: I don't understand. If a peer from outside want to connect (external_ip, 8333), how can the router tell which internal ip should it forward to?  
> **username_1**: It's a [long Wikipedia article](http://en.wikipedia.org/wiki/Network_address_translation) on how exactly it's done but it's done in the same way you can browse (port 80) on the internet on two computer without loading pages another computer loads.  
> **username_0**: We are talking about if there are two servers behind that 80 port, and using the same external IP, can how can a client specify which server it want to talk with?  

---

## 1 answers

### Answer by username_2 on 2014-02-12. Score: 3 | Accepted answer

A fixed external port is used so that other clients on the internet can connect to your client by knowing only your IP address. They will use the fixed port number to connect.

If you have multiple clients behind a NAT device, then only one client will be able to negotiate with the NAT device to listen on port 8333 (and have incoming connections translated to its client address).

Note that the above assumes the clients actually are behind a NAT devices (which is very common, especially in home networking setups). If instead the router is really just a router and not a NAT device, then each client behind the router will have its own *public* IP address, and there won't be any conflict between more than one of them listening at the same time on port 8333.

> **Comments:**
> **username_3**: Is there a viable solution for having multiple clients behind the same NAT? Can the satoshi client peer advertise itself with another port if required?  
> **username_4**: @username_3 Yes, you can change the listen port.  Specify 'port=nnnnn' in bitcoin.conf to use another port.  

---

