New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issues with creating ip address/assinging port in Linux (arch) #12
Comments
Looks like there is an integer overflow of some sort, first iteration the ip addresses look like this: if you stop the service and restart looks like they finally line up
it connects this time but still breaks: was anyone successful in running this in linux? |
Hi @ocnix, Thank you for your feedback, it will really help me to make Monday compatible with the most environments. I am currently running under macOS. I will add an environment variable like MONDAY_NETWORK_INTERFACE in order to allow you setting a custom network interface (lo in your case). Will this be a good solution to fix your issue? It’s great if the tool works after flushing your interface, I think you have forwarded a port but it is not available so the TCP proxy cannot connect to it. |
@eko thanks for getting back! yes that would be great if we can pass the interface or having something like this:
also the usage of Another thing is that on Linux the Ip addresses will never match because the generate IP address is always higher, any reason why this is happening? |
Hi, I have to idea why generate IP address is higher for you. I will try to install a linux VM to debug this over the week-end. While waiting, I just added your suggested changes to determine the network interface automatically in the following PR: #14 Thank you for your help |
@eko thanks for looking into it, I managed to find a way to get ip addresses in linux, you simply just return the ip address if linux but we are getting a segmentation vault when i do this on my fork: `if networkInterface == 'lo'{
|
Hello, I am trying out Monday to get some load of our machines while developing on services, great service and way of doing things. I am also running into the same issue on linux if I have multiple forwards in place. If I only have one, even with the error that it can't find an IP, still works and just use 127.0.0.1 but with multiple forwards I get a nil pointer error cause the port can't be assigned twice to the same ip (normal). Same config works fine on MacOS. |
Hi @mcadam, which Linux distribution are you using please? |
Hi more information about my env |
@eko it is stil broken, I have fixed this issue in my own fork, for linux you just have to check if tcp connection if available with that ip address and return it, no need to create it via ifconfig alias ex:
|
Closing this issue for now as I think this is resolved since some latest updates. Network interfaces are not hardcoded anymore. Feel free to reopen if the issue still persists and I will definitively tackle this issue. Thank you |
I am having some issues running monday on arch linux, while looking through the code base looks like the networkinterface is being hard coded:
/monday/pkg/proxy/network.go:
my loopback interface is set to
lo
. I changed the constant and ran into some other issues: ifconfig is being used to, some linux distros dont come with net-tools installed (ip is a better choice) but even with net-tools installed it is running ifconfig incorrectly for linux:args := []string{"lo0", "alias", ip.String(), "up"}
linux should be
args := []string{"lo", ip.String(), "up"}
after making all these changes on my local i am still getting this error:
Looks like its unable to assign a port to ip addresses ( last byte in addr is always off by one so it never assigns a port) in
/monday/pkg/proxy/network.go
if addr.String() == ip.String()+"/8"
The text was updated successfully, but these errors were encountered: