{"action":"created","issue":{"url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6021","labels_url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6021/labels{/name}","comments_url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6021/comments","events_url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6021/events","html_url":"https://github.com/bitcoin/bitcoin/pull/6021","id":68915935,"number":6021,"title":"[net] support for xored DNS seed output","user":{"login":"jonasschnelli","id":178464,"avatar_url":"https://avatars.githubusercontent.com/u/178464?v=3","gravatar_id":"","url":"https://api.github.com/users/jonasschnelli","html_url":"https://github.com/jonasschnelli","followers_url":"https://api.github.com/users/jonasschnelli/followers","following_url":"https://api.github.com/users/jonasschnelli/following{/other_user}","gists_url":"https://api.github.com/users/jonasschnelli/gists{/gist_id}","starred_url":"https://api.github.com/users/jonasschnelli/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonasschnelli/subscriptions","organizations_url":"https://api.github.com/users/jonasschnelli/orgs","repos_url":"https://api.github.com/users/jonasschnelli/repos","events_url":"https://api.github.com/users/jonasschnelli/events{/privacy}","received_events_url":"https://api.github.com/users/jonasschnelli/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/bitcoin/bitcoin/labels/P2P","name":"P2P","color":"006b75"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":12,"created_at":"2015-04-16T12:43:48Z","updated_at":"2015-04-28T19:35:08Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/bitcoin/bitcoin/pulls/6021","html_url":"https://github.com/bitcoin/bitcoin/pull/6021","diff_url":"https://github.com/bitcoin/bitcoin/pull/6021.diff","patch_url":"https://github.com/bitcoin/bitcoin/pull/6021.patch"},"body":"Sorry. I forget to correctly pointing out the benefits of this PR:\r\nIn the past, ISP had been blocking (removing from DNS relaying) IPs coming from Bitcoin DNS seeders.\r\n\r\nISP could also block whole IP and port ranges. They won't becaus this would affect the business models of ISP.\r\n\r\nBlocking DNS relaying and saying, the blocked IP serves malware, could be a low-noise incentive to reduce traffic.\r\n\r\nTherefore I think the network overall quality can be improved if there is at least one DNS seed providing obfuscated (in this PR xored) IPs.\r\n\r\nEspecially SPV clients could improve their network independence by having a fallback (the xored DNS seed) when a ISP decides to try to block bitcoin through DNS manipulating.\r\n\r\nclient part of https://github.com/sipa/bitcoin-seeder/pull/24\r\n\r\n(edit: added more information about this PR)"},"comment":{"url":"https://api.github.com/repos/bitcoin/bitcoin/issues/comments/97179258","html_url":"https://github.com/bitcoin/bitcoin/pull/6021#issuecomment-97179258","issue_url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6021","id":97179258,"user":{"login":"jonasschnelli","id":178464,"avatar_url":"https://avatars.githubusercontent.com/u/178464?v=3","gravatar_id":"","url":"https://api.github.com/users/jonasschnelli","html_url":"https://github.com/jonasschnelli","followers_url":"https://api.github.com/users/jonasschnelli/followers","following_url":"https://api.github.com/users/jonasschnelli/following{/other_user}","gists_url":"https://api.github.com/users/jonasschnelli/gists{/gist_id}","starred_url":"https://api.github.com/users/jonasschnelli/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jonasschnelli/subscriptions","organizations_url":"https://api.github.com/users/jonasschnelli/orgs","repos_url":"https://api.github.com/users/jonasschnelli/repos","events_url":"https://api.github.com/users/jonasschnelli/events{/privacy}","received_events_url":"https://api.github.com/users/jonasschnelli/received_events","type":"User","site_admin":false},"created_at":"2015-04-28T19:35:08Z","updated_at":"2015-04-28T19:35:08Z","body":"Updated.\r\nNot it will queries randomly one of 26 subdomains x[a-z].<seed.hostname.etc> to lower the risk if a ns domain got blocked. The xor key stays the same between different subdomains.\r\n\r\nMy try to use the first ip in the DNS response a xor key failed. It looks like some DNS servers/implementations will rotate the IP sorting by random."}}