)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"e9d3d776d39af9230f7fc328157ba8ed9a0f8219","unresolved":false,"context_lines":[{"line_number":13,"context_line":"By setting the `--local-service` option dnsmasq will filter DNS queries"},{"line_number":14,"context_line":"and reply only to queries from directly attached networks."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"[1] https://bugs.launchpad.net/neutron/+bug/1501206"},{"line_number":17,"context_line":"[2] https://review.openstack.org/256280"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: Ifd145370629a27549e2bc87da4cda0b8e6e371cf"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ff82abbf_2d49cbb5","line":16,"updated":"2017-11-29 01:51:15.000000000","message":"Not necessary as closes-bug will be a hyperlink in the review.","commit_id":"d9f1d059015c9f7a3c5753f4aeb2e7623100a372"}],"doc/source/admin/config-dns-res.rst":[{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"af5b1c81c775cd92c50104f7bc4df6b14841d428","unresolved":false,"context_lines":[{"line_number":156,"context_line":".. code-block:: ini"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"   [DEFAULT]"},{"line_number":159,"context_line":"   dnsmasq_local_service_cidrs \u003d 203.0.113.0/24, 198.51.0.0/16"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":".. note::"},{"line_number":162,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"9f91af0f_8f88c1c6","line":159,"updated":"2018-01-02 08:22:02.000000000","message":"What in case when there will be no any CIDR given in this option? I don\u0027t see any info about such case","commit_id":"61118906070773970f3627cb018ae1e368d288e1"}],"neutron/agent/linux/dhcp.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"e9d3d776d39af9230f7fc328157ba8ed9a0f8219","unresolved":false,"context_lines":[{"line_number":370,"context_line":"                local_cidr \u003d netaddr.IPNetwork(local_service_cidr)"},{"line_number":371,"context_line":"                if cidr.first \u003c\u003d local_cidr.last \\"},{"line_number":372,"context_line":"                        and local_cidr.first \u003c\u003d cidr.last:"},{"line_number":373,"context_line":"                    _local_service \u003d True"},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"            if self.conf.dhcp_lease_duration \u003d\u003d -1:"},{"line_number":376,"context_line":"                lease \u003d \u0027infinite\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff82abbf_7f80daf5","line":373,"updated":"2017-11-29 01:51:15.000000000","message":"In Pike (or Ocata?) we added support for DHCP relays, which are sometimes used in routed networks.  In that case dnsmasq could be configured to respond to subnets that aren\u0027t local to it\u0027s interface IP.  This would break that.\n\nI\u0027m starting to think https://review.openstack.org/#/c/256280/ was still a better option, assuming it could be updated to just drop DNS queries from subnets that it\u0027s not servicing.\n\nIt was also mentioned in a previous change that even doing something like setting a small defalt TTL/hoplimit could help:\n\n# iptables -t mangle -A OUTPUT {dns proto and port} -j TTL --ttl-set 2\n\nI\u0027m not sure if that meets your purposes.\n\nI know it\u0027s far-fetched, but if dnsmasq had a \"only reply to IP addresses I\u0027ve given leases to\" option that would be perfect, since that\u0027s essentially what you\u0027re trying to do, right?","commit_id":"d9f1d059015c9f7a3c5753f4aeb2e7623100a372"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"933856960a017331454a2b357d15a50e897a95c1","unresolved":false,"context_lines":[{"line_number":321,"context_line":"    def _build_cmdline_callback(self, pid_file):"},{"line_number":322,"context_line":"        # We ignore local resolv.conf if dns servers are specified"},{"line_number":323,"context_line":"        # or if local resolution is explicitly disabled."},{"line_number":324,"context_line":"        _local_service \u003d False"},{"line_number":325,"context_line":"        _no_resolv \u003d ("},{"line_number":326,"context_line":"            \u0027--no-resolv\u0027 if self.conf.dnsmasq_dns_servers or"},{"line_number":327,"context_line":"            not self.conf.dnsmasq_local_resolv else \u0027\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff82abbf_cda9f190","line":324,"updated":"2017-12-01 11:17:29.000000000","message":"I think that it should be below _no_resolv variable or above comment should be moved below this line, no?","commit_id":"3f5a705dfe65f7835aed9fec20332ca5ec068af7"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"af5b1c81c775cd92c50104f7bc4df6b14841d428","unresolved":false,"context_lines":[{"line_number":369,"context_line":"            for local_service_cidr in self.conf.dnsmasq_local_service_cidrs:"},{"line_number":370,"context_line":"                local_cidr \u003d netaddr.IPNetwork(local_service_cidr)"},{"line_number":371,"context_line":"                if cidr.first \u003c\u003d local_cidr.last \\"},{"line_number":372,"context_line":"                        and local_cidr.first \u003c\u003d cidr.last:"},{"line_number":373,"context_line":"                    _local_service \u003d True"},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"            if self.conf.dhcp_lease_duration \u003d\u003d -1:"}],"source_content_type":"text/x-python","patch_set":3,"id":"9f91af0f_2f517537","line":372,"updated":"2018-01-02 08:22:02.000000000","message":"can\u0027t You do just:\n\n    _local_service \u003d True if cidr in local_cird else False","commit_id":"61118906070773970f3627cb018ae1e368d288e1"}],"neutron/cmd/sanity_check.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"e9d3d776d39af9230f7fc328157ba8ed9a0f8219","unresolved":false,"context_lines":[{"line_number":317,"context_line":"                    check_dnsmasq_local_service_supported,"},{"line_number":318,"context_line":"                    help\u003d_(\u0027Check for local-service support in dnsmasq\u0027),"},{"line_number":319,"context_line":"                    deprecated_for_removal\u003dTrue,"},{"line_number":320,"context_line":"                    deprecated_since\u003d\u0027Pike\u0027),"},{"line_number":321,"context_line":"    BoolOptCallback(\u0027dnsmasq_version\u0027, check_dnsmasq_version,"},{"line_number":322,"context_line":"                    help\u003d_(\u0027Check minimal dnsmasq version\u0027),"},{"line_number":323,"context_line":"                    deprecated_for_removal\u003dTrue,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff82abbf_6d86f3bb","line":320,"updated":"2017-11-29 01:51:15.000000000","message":"I think you copied these last two lines from below, the current cycle is Queens, but you shouldn\u0027t mark for deprecation right away anyways.","commit_id":"d9f1d059015c9f7a3c5753f4aeb2e7623100a372"},{"author":{"_account_id":27193,"name":"David Homolka","email":"david.homolka@ultimum.io","username":"david.homolka"},"change_message_id":"274feb221114aabda8afc81e7ddd8edc3f02acff","unresolved":false,"context_lines":[{"line_number":317,"context_line":"                    check_dnsmasq_local_service_supported,"},{"line_number":318,"context_line":"                    help\u003d_(\u0027Check for local-service support in dnsmasq\u0027),"},{"line_number":319,"context_line":"                    deprecated_for_removal\u003dTrue,"},{"line_number":320,"context_line":"                    deprecated_since\u003d\u0027Pike\u0027),"},{"line_number":321,"context_line":"    BoolOptCallback(\u0027dnsmasq_version\u0027, check_dnsmasq_version,"},{"line_number":322,"context_line":"                    help\u003d_(\u0027Check minimal dnsmasq version\u0027),"},{"line_number":323,"context_line":"                    deprecated_for_removal\u003dTrue,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff82abbf_3c26b16a","line":320,"in_reply_to":"ff82abbf_6d86f3bb","updated":"2017-11-30 14:05:17.000000000","message":"Ok, it is changed in new patch set","commit_id":"d9f1d059015c9f7a3c5753f4aeb2e7623100a372"}],"neutron/conf/agent/dhcp.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"e9d3d776d39af9230f7fc328157ba8ed9a0f8219","unresolved":false,"context_lines":[{"line_number":95,"context_line":"    cfg.ListOpt(\u0027dnsmasq_local_service_cidrs\u0027,"},{"line_number":96,"context_line":"                default\u003d[],"},{"line_number":97,"context_line":"                help\u003d_(\u0027Comma-separated list of the CIDRs \u0027"},{"line_number":98,"context_line":"                       \u0027used for --local-service.\u0027)),"},{"line_number":99,"context_line":"    cfg.BoolOpt(\u0027dhcp_broadcast_reply\u0027, default\u003dFalse,"},{"line_number":100,"context_line":"                help\u003d_(\"Use broadcast in DHCP replies.\")),"},{"line_number":101,"context_line":"    cfg.IntOpt(\u0027dhcp_renewal_time\u0027, default\u003d0,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff82abbf_ff086a92","line":98,"updated":"2017-11-29 01:51:15.000000000","message":"I\u0027m just not sure a config option like this is doable for this.  For example, what will you do if you need to change it?  Re-starting all DHCP services could be painful.","commit_id":"d9f1d059015c9f7a3c5753f4aeb2e7623100a372"},{"author":{"_account_id":27193,"name":"David Homolka","email":"david.homolka@ultimum.io","username":"david.homolka"},"change_message_id":"db4be33915ce1f8000a003d1210f19240b20db5c","unresolved":false,"context_lines":[{"line_number":95,"context_line":"    cfg.ListOpt(\u0027dnsmasq_local_service_cidrs\u0027,"},{"line_number":96,"context_line":"                default\u003d[],"},{"line_number":97,"context_line":"                help\u003d_(\u0027Comma-separated list of the CIDRs \u0027"},{"line_number":98,"context_line":"                       \u0027used for --local-service.\u0027)),"},{"line_number":99,"context_line":"    cfg.BoolOpt(\u0027dhcp_broadcast_reply\u0027, default\u003dFalse,"},{"line_number":100,"context_line":"                help\u003d_(\"Use broadcast in DHCP replies.\")),"},{"line_number":101,"context_line":"    cfg.IntOpt(\u0027dhcp_renewal_time\u0027, default\u003d0,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff82abbf_a7f5ac85","line":98,"in_reply_to":"ff82abbf_ff086a92","updated":"2017-12-01 10:06:52.000000000","message":"If I do the change, it is sufficient \"service neutron-dhcp-agent restart\"","commit_id":"d9f1d059015c9f7a3c5753f4aeb2e7623100a372"}]}
