Skip to content

feat: make vertd dual stack with ipv4 fallback instead of ipv4 only - #56

Closed
upmcplanetracker wants to merge 7 commits into
VERT-sh:mainfrom
upmcplanetracker:main
Closed

upmcplanetracker wants to merge 7 commits into
VERT-sh:mainfrom
upmcplanetracker:main

Conversation

@upmcplanetracker

Copy link
Copy Markdown
Contributor

Hi -- i made vertd dual stack capable with a strong ipv4 fallback. I compiled this as a docker and ran it on my DS environemnt and then did docker exec curl with both -4 and -6 and confirmed that it is listening on both ipv4 and 6. Nothing broken.

making vertd dual stack helps it work in more enviroments such as ipv6 only environments. the strong fallback to ipv4 will make sure that it works in default mode of ipv4, since probably 99% of people are running this as ipv4 or DS.

I also made sure that everything compiles including the linux, macos, and win binaries. THere were again no breaking changes.

thank you for your consideration.

Updated server binding to support dual-stack IPv4/IPv6 and added error handling for binding failures.
Add functionality to read port from environment variable.
Updated the GitHub Actions workflow to use GitHub-hosted runners for Linux and Windows builds instead of self-hosted runners. Added installation step for MinGW to support Windows target builds.
Updated the GitHub Actions workflow to use self-hosted runners for Windows and Linux builds, and removed MinGW installation step.
@upmcplanetracker

Copy link
Copy Markdown
Contributor Author

my output showing DS capability:

me@pihole1:~$ docker exec -it vertd curl -v http://127.0.0.1:8080/
*   Trying 127.0.0.1:8080...
* Connected to 127.0.0.1 (127.0.0.1) port 8080
> GET / HTTP/1.1
> Host: 127.0.0.1:8080
> User-Agent: curl/8.5.0
> Accept: */*
> 
< HTTP/1.1 404 Not Found
< content-length: 0
< vary: Origin, Access-Control-Request-Method, Access-Control-Request-Headers
< date: Wed, 26 Aug 2026 17:33:47 GMT
< 
* Connection #0 to host 127.0.0.1 left intact
me@pihole1:~$ docker exec -it vertd curl -v http://[::1]:8080/
*   Trying [::1]:8080...
* Connected to ::1 (::1) port 8080
> GET / HTTP/1.1
> Host: [::1]:8080
> User-Agent: curl/8.5.0
> Accept: */*
> 
< HTTP/1.1 404 Not Found
< content-length: 0
< vary: Origin, Access-Control-Request-Method, Access-Control-Request-Headers
< date: Wed, 26 Aug 2026 17:33:54 GMT
< 
* Connection #0 to host ::1 left intact
me@pihole1:~$ docker exec -it vertd cat /proc/net/tcp6
  sl  local_address                         remote_address                        st tx_queue rx_queue tr tm->when retrnsmt   uid  timeout inode
   0: 00000000000000000000000000000000:1F90 00000000000000000000000000000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 91400290 1 0000000000000000 100 0 0 10 0
   1: 00000000000000000000000001000000:96CC 00000000000000000000000001000000:1F90 06 00000000:00000000 03:000011B9 00000000     0        0 0 3 0000000000000000

@upmcplanetracker upmcplanetracker changed the title make vertd dual stack with ipv4 fallback instead of ipv4 only feat: make vertd dual stack with ipv4 fallback instead of ipv4 only Aug 26, 2026
@upmcplanetracker

Copy link
Copy Markdown
Contributor Author

closing, unclear if project is routinely maintained.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant