I could not host or join most friends’ games in Borderlands 2. It probably tries to use uPNP, which I don’t enable on my router.
Searched for clues on forums (incoming ports to forward) and finally got it working:
7777 (TCP/UDP) 9989 (UDP) 27900 (UDP) 28900 (TCP) 28910 (TCP) 6500 (UDP)
I know for sure 6500
is necessary, but maybe some of the others are not.