juju ssh/scp proxy ip address selection oddities
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical Juju |
Fix Released
|
High
|
John A Meinel | ||
2.0 |
Won't Fix
|
Undecided
|
Unassigned |
Bug Description
juju: 2.0.2
When doing a juju scp or ssh, I experience very irregular results for the IP address selection:
dpb@helo:slaves[0]$ juju ssh 0 -v -v -v 2>&1 | grep "Connecting to"
debug1: Connecting to 10.100.0.3 [10.100.0.3] port 22.
dpb@helo:slaves[0]$ juju ssh 1 -v -v -v 2>&1 | grep "Connecting to"
debug1: Connecting to 10.96.127.0 [10.96.127.0] port 22.
dpb@helo:slaves[0]$ juju ssh 2 -v -v -v 2>&1 | grep "Connecting to"
debug1: Connecting to 10.96.127.9 [10.96.127.9] port 22.
dpb@helo:slaves[0]$ juju ssh 3 -v -v -v 2>&1 | grep "Connecting to"
debug1: Connecting to 10.100.0.13 [10.100.0.13] port 22.
dpb@helo:slaves[0]$ juju status
Model Controller Cloud/Region Version
slaves lrc-region1 lrc/region1 2.0.2.1
App Version Status Scale Charm Store Rev OS Notes
landscape-
landscape-
precise-server unknown 1 landscape-devenv local 0 ubuntu
trusty-client unknown 1 landscape-devenv local 0 ubuntu
trusty-server unknown 2 landscape-devenv local 1 ubuntu
Unit Workload Agent Machine Public address Ports Message
precise-server/0* unknown idle 0 10.96.127.2
trusty-client/0* unknown idle 1 10.96.127.0
trusty-server/0 unknown idle 2 10.96.127.9
trusty-server/1* unknown idle 3 10.96.127.16
Machine State DNS Inst id Series AZ
0 started 10.96.127.2 6025e44c-
1 started 10.96.127.0 df251733-
2 started 10.96.127.9 a337460c-
3 started 10.96.127.16 02bf84ef-
What I expect to happen:
-------
1) Each time I juju ssh I use the public address of the host.
2) If I use 'proxy-ssh=true' model setting, I use the public address of the controller and the private address of the node inside the model.
Changed in juju: | |
status: | New → Triaged |
importance: | Undecided → High |
milestone: | none → 2.2.0 |
Changed in juju: | |
milestone: | 2.2.0 → 2.1-rc1 |
assignee: | nobody → John A Meinel (jameinel) |
Changed in juju: | |
status: | In Progress → Fix Committed |
Changed in juju: | |
status: | Fix Committed → Fix Released |
Changed in juju: | |
status: | Fix Committed → Fix Released |
In your above list of IP addresses, I have the feeling that we can't really tell what is "public" and what is "private" given that 10.100.* doesn't look any more public/private than 10.96.*
I believe we use a few of the "what is a private IP address" detection, but when everything falls under RFC1918, we are unable to tell which is actually routable.
(I presume that all of these machines actually have multiple network interfaces, and multiple potential addresses.)
It is true that in 2.0 we don't model preferred spaces for accessing machines very well. We do model what spaces applications should interact with, but that doesn't give information about the machine itself.