IPv6 on Windows not working correctly
Open
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
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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