MaaS Region advertises RPC endpoints based on something other than MaaS URL
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MAAS |
Expired
|
Undecided
|
Unassigned |
Bug Description
Trying to debug an issue where I'm building a secure tunnel to the Region server from the Rack server over the internet. The region server is on a 10.196.136.x/28, and has a wireguard network of 10.196.5.x/26:
eth0: 10.196.36.132/28
wg0: 10.196.5.193/26
I have the MaaS URL configured to:
root@
Mode: region
Settings:
maas_url=http://
database_
database_
database_
database_
database_
You can see that the URL is pointing to the IP on the wireguard interface.
When I curl the MAAS/rpc/ interface, though, the endpoints being advertised are for the eth0 network:
# note that I'm connecting to the wireguard IP)
# curl http://
{
"eventloops": {
[
5253
]
],
[
5252
]
],
[
5251
]
],
[
5250
]
]
}
}
I haven't been able to tell for certain if this is related to a getHost() in a Twisted call or not yet, but it seems likely that something in the backend RPC code is looking at either the hostname or just the IP on the default route. I wanted to get this in front of the people who were more familiar with the system than I am.
I am assuming this is unintended behavior, but if I'm doing something wrong, please let me know.
Thanks!
--Matt
Changed in maas: | |
status: | Incomplete → New |
the MAAS URL is intended as the public-facing endpoint for talking to MAAS (via UI/API).
The regions advertise all of their IPs to racks so that they can figure out which IPs they can use to connect to regions.
Not all region IPs need to be reachable from each rack.
Are you seeing an actual issue with your setup?