Hello, everyone!
I am running I2P and would like to have it port-forwarded to help out the network. Even though I have port-forwarded both UDP and TCP, it always indicates “firewalled” or “symmetric NAT.” As far as I am aware, I do not have a symmetric NAT. I run many other port-forwarded services without any issues, some publicly, so I am not sure what the specific issue with I2P is.
EDIT: After some more digging i managed to fix the issue while using docker.
For some reason you need to add the environmental variable EXT_PORT
to the compose file like so
services:
i2p:
image: geti2p/i2p:latest
environment:
- EXT_PORT=XXXX <Make this the same port as the public UDP/TCP port>
volumes:
- /XXX/I2P-data/i2pconfig:/i2p/.i2p
- /XXX/I2P-data/i2ptorrents:/i2psnark
ports:
- 4444:4444
- 6668:6668
- 7657:7657
- XXXX:XXXX
- XXXX:XXXX/udp
I managed to fix it. Although not obvious from the official docs, You need to add a extra environmental variable even when you have mapped the correct ports. I saw some error about it in the logs for the container then i searched for this variable and Found it listed here: https://github.com/i2p/i2p.i2p/blob/master/Docker.md