Fixes #6518 - lookup the bmc smartproxy via subnets.id

This fixes 6518, by picking the smartproxy to use via subnet_id.  Before it was trying to find a dhcp_id or tftp_id that matched the subnet_id, but since it's a subnet id it really should be comparing subnets.id.

I'm not sure how it was working most of the time before, but with this change it works all of the time.
@bwitt you are right! this is indeed the bug.
the original aim for this was:
* try to find a close / relevant proxy, in the same subnet, in order to do that, try finding though dhcp / tftp subnet relationships (you are right that dhcp_id and tftp_id are proxies).
* fall back to other proxies with bmc feature.

AFAIU in your change, you would not take into account the proxies which are related via dhcp/tftp subnet settings.