New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Mesh] Fixes a conflict between DHCPv4 and ND6 DNS server list #1596

Merged
merged 1 commit into from Nov 9, 2018

Conversation

Projects
None yet
2 participants
@avtolstoy
Copy link
Member

avtolstoy commented Nov 9, 2018

Problem

Despite the fact that we currently don't support IPv6 on non-mesh interfaces, our network stack still processes incoming ND6 (RFC4861) messages. When receiving RA, ND6 code will blindly overwrite DNS servers previously set by DHCPv4.

Solution

Disable ND6 packet processing if NETIF_FLAG_NO_ND6 is set on the interface (particle-iot/lwip#3). This holds true at the moment for all our interfaces.

Steps to Test

Check that Argons or Xenons with Ethernet FeatherWing can correctly perform gateway functionality when connected to an IPv6-enabled network on WiFi or Ethernet interface.

Example App

N/A

References

  • [CH24688]

Completeness

  • User is totes amazing for contributing!
  • Contributor has signed CLA (Info here)
  • Problem and Solution clearly stated
  • Run unit/integration/application tests on device
  • Added documentation
  • Added to CHANGELOG.md after merging (add links to docs and issues)

@avtolstoy avtolstoy added bug mesh labels Nov 9, 2018

@avtolstoy avtolstoy requested review from sergeuz , m-mcgowan and technobly Nov 9, 2018

@avtolstoy

This comment has been minimized.

Copy link
Member

avtolstoy commented Nov 9, 2018

@technobly Could you please test this branch in your environment and approve if it fixes the issue for you?

@technobly

This comment has been minimized.

Copy link
Member

technobly commented Nov 9, 2018

Programmed this on my gateway (when connected to my Xfinity router) while the joiner was blinking green and after it programmed and rebooted my joiner connected finally! W00t!! Way to go Andrey!

$ git co fix/nd6-dhcpv4-dns-conflict
$ git submodule update --init
main $ make clean all -s PLATFORM=xenon APP=tinker-serial1-debugging DEBUG_BUILD=y MODULAR=n program-dfu

@avtolstoy avtolstoy merged commit 03a83b0 into mesh-develop Nov 9, 2018

2 checks passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details
continuous-integration/travis-ci/push The Travis CI build passed
Details

@avtolstoy avtolstoy deleted the fix/nd6-dhcpv4-dns-conflict branch Nov 9, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment