massalabs / massalabs/PeerNet

IPv6 on Windows not working correctly

Open
#70 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

  • #71 by @Leo-Besancon — closed without merging
Dominant language
Rust
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

The TcpListener binding is not correctly configured for Windows edge-cases.
We should port the code from Bootstrap listener that has the correct behaviour (sets the needed flag with a socket2 socket:

socket.set_only_v6(false)?;

Right now, the bug probably means:

  • That windows node runners with IPv4 should bind the protocol on IPv4 format in the config in order to be routable:
[protocol]
    bind = "0.0.0.0:31244"
  • (Needs testing to be sure) Maybe routable windows node runners with IPv6 can only get INs from IPv6. Note: I don't seem to have trouble with this, but I'll wait for after genesis on mainnet to be sure, IN connections are few.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing the TcpListener binding with the Bootstrap listener, focusing on the socket2 setup and the set_only_v6(false) behavior. Test Windows IPv4 and IPv6 bindings using the protocol configuration examples; done means the relevant node runners bind and remain routable for the supported address families.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
networking
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.