qdeconinck/mp-quic

We found out localhost can only get one remote address , and can not establish paths with another IP addresses

Opened this issue · 10 comments

Hello,
We've used this project to do some experiments,if client and server both with 2 interfaces communicate with each other with MPQUIC,client and server can only get one address of each other,so there's a problem establishing paths,it would be great if you reply me this question.
image
(server) h1 can only get address 10.0.2.2 of h2 (client),but cannot get 10.0.3.2.Same situation of h2.

I'm not sure to understand your issue here. Is it an actual network or is it emulation? What do you mean by "(server) h1 can only get address 10.0.2.2 of h2 (client),but cannot get 10.0.3.2.Same situation of h2."? Is it related to the connectivity or to the absence of ADD ADDRESS frames?

I have the same problem. I created setup with client and server, both with two interfaces. However, the server has created two paths to send packets to the client, but it uses only one interface and not two. For example, the server has IP 10.0.2.2 on eth0 and 10.0.4.2 on eth1, the client has IP 10.0.1.2 and 10.0.3.2. I start caddy server with mpquc-go on 10.0.2.2. But the mpquic-go server sends packets only with the eth0 interface and not eth1. Is this a problem with the server.go file? Because I think mpquic-go should send packets on the eth0 and eth1 interfaces

I also encountered the same problem. After reading the source code, I found that the problem was caused by the naming of the network card. There was no corresponding network card name in the code and the network card was filtered out. I solved the problem by adding the network card name with the prefix of ENS.

cxht commented

@li237340453 Hi, Thanks for your solution, my client can setup two paths with the server by adding the corresponding network card name. However I met another problem, packets are sent on only one path, the other path has been established but does not receive any packet, and the RTT of this path is "0". Have you met this problem?

@cxht ,Please search the policy route based on the source IP, otherwise only one network card can connect to the Internet

cxht commented

@li237340453 I will try it. Thanks for your response.

I also encountered the same problem. After reading the source code, I found that the problem was caused by the naming of the network card. There was no corresponding network card name in the code and the network card was filtered out. I solved the problem by adding the network card name with the prefix of ENS.

Hi @li237340453 , I setup in the real network and have the same problem, I change network card name with the prefix of ENS (ENS_0, ENS_1) but server show only one path. Can you tell in more detail how to configure it? Thank you very much

I also encountered the same problem. After reading the source code, I found that the problem was caused by the naming of the network card. There was no corresponding network card name in the code and the network card was filtered out. I solved the problem by adding the network card name with the prefix of ENS.

Hi @li237340453 , I setup in the real network and have the same problem, I change network card name with the prefix of ENS (ENS_0, ENS_1) but server show only one path. Can you tell in more detail how to configure it? Thank you very much

Hello @nguyenthanhtrungbkhn , I have the same problem in the real network with yours, did you find a solution?

I also encountered the same problem. After reading the source code, I found that the problem was caused by the naming of the network card. There was no corresponding network card name in the code and the network card was filtered out. I solved the problem by adding the network card name with the prefix of ENS.

Hi @li237340453 , I setup in the real network and have the same problem, I change network card name with the prefix of ENS (ENS_0, ENS_1) but server show only one path. Can you tell in more detail how to configure it? Thank you very much

Do you enable multipath?