Open GoogleCodeExporter opened 9 years ago
The learned networks should be stored in a persistent file separate from the
clientdb, because someone might want to delete the clientdb but we don't want
to lose the learned networks because WOL would regress.
Original comment by matthias...@gmail.com
on 23 Nov 2012 at 5:19
Current state of the implementation:
"2) try to resolve the plain name" has been dropped. There's not really a
justification for assuming that if "foo.bar.com" fails to resolve we should use
"foo.otherdomain.org" just because the name happens to start with "foo". If a
system is stored in LDAP with a fully qualified domain name that's a strong
statement by the admin that he wants to identify the system with precision.
Most of the algorithm is contained in db.SystemFullyQualifiedNameforMAC(). Step
5), the numeric network spamming is contained directly in action.Wake()
The following parts are still missing:
1) Add learned numeric networks to db.SystemNetworksKnown()
1.1) Learn numeric networks from (confirm_)new_server messages' <client>
elements
1.2) Learn numeric networks from new_foreign_client messages
1.3) Learn numeric networks directly from incoming connections'
TCPConn.RemoteAddr(). This takes care of learning server peers as well as
client peers, so there's no need to parse <source> elements on new_server or
here_i_am.
NOTE: Learning ipHostNumber networks is not included in this list because I
believe it offers no additional benefit over the above set.
2) Learn domains for being returned by db.SystemDomainsKnown()
2.1) Learn domains from peer servers listed in DNS (config.ReadNetwork())
2.2) From reverse lookup, whenever we learn a NEW numeric network from an
address in 1) above.
Original comment by matthias...@gmail.com
on 4 Dec 2012 at 9:05
=> Bonus
Original comment by matthias...@gmail.com
on 18 Feb 2013 at 6:04
Status => Accepted
Original comment by matthias...@gmail.com
on 18 Feb 2013 at 6:57
Original issue reported on code.google.com by
matthias...@gmail.com
on 23 Nov 2012 at 4:58