payload: {"action":"created","issue":{"url":"https://api.github.com/repos/iiab/iiab/issues/1540","repository_url":"https://api.github.com/repos/iiab/iiab","labels_url":"https://api.github.com/repos/iiab/iiab/issues/1540/labels{/name}","comments_url":"https://api.github.com/repos/iiab/iiab/issues/1540/comments","events_url":"https://api.github.com/repos/iiab/iiab/issues/1540/events","html_url":"https://github.com/iiab/iiab/issues/1540","id":416482945,"node_id":"MDU6SXNzdWU0MTY0ODI5NDU=","number":1540,"title":"DESIGN, PROPOSAL | Rethink network, avahi, zeroconf, link-local for decentralized and multiple IIAB's on a network","user":{"login":"m-anish","id":5288668,"node_id":"MDQ6VXNlcjUyODg2Njg=","avatar_url":"https://avatars3.githubusercontent.com/u/5288668?v=4","gravatar_id":"","url":"https://api.github.com/users/m-anish","html_url":"https://github.com/m-anish","followers_url":"https://api.github.com/users/m-anish/followers","following_url":"https://api.github.com/users/m-anish/following{/other_user}","gists_url":"https://api.github.com/users/m-anish/gists{/gist_id}","starred_url":"https://api.github.com/users/m-anish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/m-anish/subscriptions","organizations_url":"https://api.github.com/users/m-anish/orgs","repos_url":"https://api.github.com/users/m-anish/repos","events_url":"https://api.github.com/users/m-anish/events{/privacy}","received_events_url":"https://api.github.com/users/m-anish/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2019-03-03T06:49:47Z","updated_at":"2019-03-03T06:50:06Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"This is an umbrella ticket meant to track design discussions and work related to supporting multiple IIAB's over a network. \r\n\r\nThe premise is this:\r\nIn a small, medium sized mesh network with many users, having one IIAB poses a few challenges:\r\n1. It becomes a single point of failure vis-a-vis DHCP, DNS, Gateway, Content serving.\r\n2. IIAB is difficult to update, other than the content part, atleast while in-field. This slows down progress introducing new features. \r\n\r\nIt would be better if we could support multiple IIAB's over a network in a decentralized fashion. Some ideas (and this is not a well vetted, or exhaustive list, so would love to discuss this) would be:\r\n1. Use avahi more smartly. Create a structure, wherein, all IIAB services installed in an instance are advertised with machine readable details. This might include things like:\r\n    1. Service access URL, port\r\n    2. Service description\r\n    3. Any sample credentials\r\n2. Think about supporting a link-local configuration. Challenges here are:\r\n    1. How would DNS work in such a situation?\r\n    2. Would some services complain if working over a link-local network, rather than a typical LAN subnet.\r\n    3. Any other unforeseen problems\r\n    4. Alternatively, think about decentralized dhcp through a shared leases file.\r\n3. Use mDNS, DNS-SD to aid in service discovery\r\n4. One could also think of a web-client kind of front end. For example, think of a box.lan homepage, that is populated by everything that is advertised (and verified using keys if necessary) on the network. Such a page would be dynamic, and would support multiple IIAB's on a network, while making it transparent to the user. \r\n\r\nThese enhancements are only slightly interrelated and can be done bit by bit. For example, we could begin with making IIAB services announce themselves on avahi, for a start.\r\n\r\nThoughts?\r\n\r\nHappy to discuss on a call if people are willing to participate in this discussion.  "},"comment":{"url":"https://api.github.com/repos/iiab/iiab/issues/comments/468994630","html_url":"https://github.com/iiab/iiab/issues/1540#issuecomment-468994630","issue_url":"https://api.github.com/repos/iiab/iiab/issues/1540","id":468994630,"node_id":"MDEyOklzc3VlQ29tbWVudDQ2ODk5NDYzMA==","user":{"login":"m-anish","id":5288668,"node_id":"MDQ6VXNlcjUyODg2Njg=","avatar_url":"https://avatars3.githubusercontent.com/u/5288668?v=4","gravatar_id":"","url":"https://api.github.com/users/m-anish","html_url":"https://github.com/m-anish","followers_url":"https://api.github.com/users/m-anish/followers","following_url":"https://api.github.com/users/m-anish/following{/other_user}","gists_url":"https://api.github.com/users/m-anish/gists{/gist_id}","starred_url":"https://api.github.com/users/m-anish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/m-anish/subscriptions","organizations_url":"https://api.github.com/users/m-anish/orgs","repos_url":"https://api.github.com/users/m-anish/repos","events_url":"https://api.github.com/users/m-anish/events{/privacy}","received_events_url":"https://api.github.com/users/m-anish/received_events","type":"User","site_admin":false},"created_at":"2019-03-03T06:50:06Z","updated_at":"2019-03-03T06:50:06Z","author_association":"CONTRIBUTOR","body":"tagging @pdey and @mikkokotila"}}
other: {"actor":{"display_login":"m-anish"}}