Define outgoing ports, Define outgoing ports
|
|
![]() ![]() ![]() |
Define outgoing ports, Define outgoing ports
| Zom |
|
|
Group: Members Posts: 30 Joined: 3-October 06 |
From what I have read eMule+ uses the ephemeral ports range for outgoing connections.
In order to ensure specific routing for outgoing traffic through an alternate public IP, so that I can ensure correct routing for incoming traffic trough that same public IP, I would like to specify the range of ports used for outgoing UDP and TCP connections to a set different from the standard ephemeral port range. How can I do this? This post has been edited by Zom: May 3 2010, 04:22 |
|
Post
#1
|
|
| muleteer |
May 3 2010, 07:35
|
|
Group: Betatesters Posts: 8261 Joined: 29-February 04 |
eMule Plus only assigns random ports on first install. After that they remain the same unless changed manually.
To change, click preferences, and then the connections tab. Change TCP and UDP ports as desired. Advisable to restart the client. Some firewalls need you to reboot the computer as well. |
|
Post
#2
|
|
| Zom |
May 3 2010, 08:09
|
|
Group: Members Posts: 30 Joined: 3-October 06 |
QUOTE(muleteer @ May 3 2010, 18:35) eMule Plus only assigns random ports on first install. After that they remain the same unless changed manually. Thanks - but I am talking about outgoing ports, not incoming ports. I know how to set the "client" ports and what that setting does. Those settings do not influence the "outgoing" traffic ports. Any other ideas? |
|
Post
#3
|
|
| Aw3 |
May 3 2010, 23:26
|
|
Group: Admins Posts: 7319 Joined: 8-December 03 |
It uses what system networking stack is allocating by default -- kind of arbitrary port number for outgoing connections.
There's no way to specify a range of the ports to use for this application. The other think I don't understand is if you want to send packets over 2 different connections out, how do you expect to get anything back? Or maybe you just want to use a particular connection for the eMule Plus only. In this case it uses the default system connection to communicate. |
|
Post
#4
|
|
| Zom |
May 4 2010, 00:05
|
|
Group: Members Posts: 30 Joined: 3-October 06 |
QUOTE(Aw3 @ May 4 2010, 10:26) Sort of. I want to use a separate public IP for all P2Ps, including eMule Plus. To do that for eMule Plus I need to steer all outgoing connections via that IP so that the responding incoming connections use the same IP. I can do it for servers by specifying routings for their IPs, but I cant do it for other clients because I cant know their IPs and I cant route all ephemeral ports. It would work if I could route a specified port range. Is there any chance this feature could be included in a future version? I think others would use it if it was there. |
|
Post
#5
|
|
| Aw3 |
May 4 2010, 01:38
|
|
Group: Admins Posts: 7319 Joined: 8-December 03 |
One thing is too have default system connection for P2P
The other thing which can be done is to bind application connections to the particular interface through its IP address. Official eMule has some code to do that, but I can't say how to use it (it could be through manual editing of preferences.ini file). Technically, it can be ported, but I personally don't even have an environment to test it. |
|
Post
#6
|
|
| Zom |
May 4 2010, 02:08
|
|
Group: Members Posts: 30 Joined: 3-October 06 |
Thanks for taking an interest.
QUOTE(Aw3 @ May 4 2010, 12:38) Unfortunately, without knowing the ports used, P2P content can only be determined AFTER the connection is made. That is OK for shaping and blocking, but not for routing. QUOTE The other thing which can be done is to bind application connections to the particular interface through its IP address. Official eMule has some code to do that, but I can't say how to use it (it could be through manual editing of preferences.ini file). That sounds like an ideal solution. If eMule Plus could be told which gateway/publicIP to use it would solve my problem elegently.QUOTE I do. If you want to throw something at me to test that feature - please do. I am willing to spend as much time as is reasonably required to achieve a solution. |
|
Post
#7
|
|
| Aw3 |
May 4 2010, 02:20
|
|
Group: Admins Posts: 7319 Joined: 8-December 03 |
I will take a look, but I don't promise.
|
|
Post
#8
|
|
| Zom |
May 4 2010, 03:08
|
|
Group: Members Posts: 30 Joined: 3-October 06 |
|
|
Post
#9
|
|
| Aw3 |
May 13 2010, 01:17
|
|
Group: Admins Posts: 7319 Joined: 8-December 03 |
I have some code ready for you to try. Do you build yourself or you need a binary?
|
|
Post
#10
|
|
| Zom |
May 13 2010, 02:17
|
|
Group: Members Posts: 30 Joined: 3-October 06 |
|
|
Post
#11
|
|
| Aw3 |
May 14 2010, 03:41
|
|
Group: Admins Posts: 7319 Joined: 8-December 03 |
Here's the build.
You need to add BindAddr=<IP> to the [eMule] section of the preferences.ini. I moved the following connections to be on the specific interface: - TCP/UDP p2p - TCP/UDP server communication - WebServer - IRC - LanCast - MobileMule I'm not sure how much you can try, but it would be nice if you can try at least IRC and WebServer. Please post here how it goes. This post has been edited by Aw3: May 16 2010, 20:04 |
|
Post
#12
|
|
| Zom |
May 16 2010, 14:43
|
|
Group: Members Posts: 30 Joined: 3-October 06 |
QUOTE(Aw3 @ May 14 2010, 14:41) Installed the new version tonight. So far it works. I havent tried everything yet, but basic server and p2p comms binds as expected and can be routed as required. The webserver appears on the bound IP as expected and can be NATted accordingly. I have never used IRC, LanCast or MobileMule. I will have a readup and see if I can readily test them. So far very good. |
|
Post
#13
|
|
| Zom |
May 16 2010, 15:13
|
|
Group: Members Posts: 30 Joined: 3-October 06 |
|
|
Post
#14
|
|
| Aw3 |
May 16 2010, 20:07
|
|
Group: Admins Posts: 7319 Joined: 8-December 03 |
I don't think you can really test LanCast, but for IRC you can just click Connect button on the IRC page. If you get the list of channels and connect to the default one (emule+, if I remember correctly), we can assume it works.
Thanks a lot for trying it out. |
|
Post
#15
|
|
![]() ![]() ![]() |
| Lo-Fi Version | Time is now: 22nd May 2013 - 07:48 |