swaziloo

Autoconfig thrash(?) with Docker

3 posts in this topic

When it manages to connect, it's really great. Was working perfectly all day yesterday. This morning: no love.

I'm on 2x Linux (Debian) machines, both running docker, which appears to be heavily confusing the autoconfig mechanism. Here's the networking view (netstat -an | grep 24810) from the PC to my right (172.16.6.65) shortly after restarting the daemon this morning:

tcp        0      0 172.16.6.65:55222       172.16.6.57:24810       ESTABLISHED
tcp        0      1 172.16.6.65:39538       172.24.0.1:24810        SYN_SENT   
tcp        0      1 172.16.6.65:36150       172.26.0.1:24810        SYN_SENT   
tcp        0      1 172.16.6.65:36180       172.26.0.1:24810        SYN_SENT   
tcp        0      1 172.16.6.65:58616       172.22.0.1:24810        SYN_SENT   
tcp        0      1 172.16.6.65:42998       172.20.0.1:24810        SYN_SENT   
tcp        0      1 172.16.6.65:44582       172.27.0.1:24810        SYN_SENT   
tcp        0      1 172.16.6.65:44612       172.27.0.1:24810        SYN_SENT   
tcp        0      1 172.16.6.65:42968       172.20.0.1:24810        SYN_SENT   
tcp        0      1 172.16.6.65:50136       172.25.0.1:24810        SYN_SENT   
tcp        0      1 172.16.6.65:39568       172.24.0.1:24810        SYN_SENT  

You'll note that it's connected to the PC to my left (172.16.6.57), and it's also trying to connect to all the virtual IP docker interfaces sent over from that same machine.

The left pc has connected to all the docker interfaces that the right pc broadcast, but on it's own loopback, and somehow failed to pick up the real interface of the right machine:

tcp        0      0 0.0.0.0:24810           0.0.0.0:*               LISTEN     
tcp        0      0 172.19.0.1:51988        172.19.0.1:24810        ESTABLISHED
tcp        0      0 172.17.0.1:24810        172.16.6.57:50634       ESTABLISHED
tcp        0      0 172.17.0.1:50634        172.17.0.1:24810        ESTABLISHED
tcp        0      0 172.19.0.1:24810        172.16.6.57:51988       ESTABLISHED
tcp        0      0 172.18.0.1:24810        172.16.6.57:57950       ESTABLISHED
tcp        0      0 172.18.0.1:57950        172.18.0.1:24810        ESTABLISHED
tcp        0      0 172.16.6.57:24810       172.16.6.65:55222       ESTABLISHED

Anything that's not 172.16.6.[57|65] is a virtual docker interface on one of the machines (the 172.20 and higher are only on the left), and since I have docker running on both machines, it's apparent that the autoconfig is sending those addresses back and forth. Everything marked 'SYN_SENT' on the right PC is a virtual docker port on the left PC that it's not going to find.

I confirmed that I can telnet to the open 24810 port on either machine, so the traffic can (and does--has, at least) flow and work perfectly. I just wish there were a way to tell it to only use a single (real) interface. It's also a problem for me that our wifi network and lan network can't talk to one another here (I know, I know....) so that can add another whole layer of mess to autoconfiguration that specifying a particular interface might solve for me.

Here is stdout from the two machines:

Right PC daemon stdout

Left PC daemon stdout

Let me know if there are any other details I might provide, and thanks.

 

Share this post


Link to post
Share on other sites

I see this all the time tries either my docker interfaces or virtualbox ones. It really should either cycle through until it connects or use "physical" interfaces like ethernet/wifi. I tried beta2 and went back to v1.8. Some weeks later I tried (today) I tried beta4 and its the same old story.

I'm not convinced on the "config-less" idea, it aliens those of us that can use vi to edit configs

Share this post


Link to post
Share on other sites

These issues will be fixed in beta5, which is due in about 4-5 weeks.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now