support for Ipv6 (#2593)

* started adding v6 support

* added error checking and change messages to the user

* fixed lsp caused issue

* fixed formatting error

* added error handling to https

* fixed formatting errors

* brought server starting into different func and added enable v6 and v4

* added error checking for disabling both v6 and v4. added option to prefer v6 for dns. added that stuff to the default config

* fixed dumb bug

* changed to settings named disable ipvx

* fixed failed ips still showing as listening

* fixed error handling

* changed ip protocol config layout

* small const name changes

* fixed no error if only available protocol fails, and changed wording of some errors

* fixed error handling saying 'non-fatal error' for protocol fail even when it's the only one enabled

* moved more logic to listen error handler

* fixed eslint issues

* added more info on when to prefer ipv6 for dns

* in conf changed one 'ipv6' to 'IPv6' for consistency

* changed error message and redid how starting the server works

* removed unneeded log

* removed unneeded log

* removed unneeded comments

* fixed errors

* fixed errors

* fixed errors

* changed the wording of ip related error messages

* removed empty lines

* changed to .finally(startServer);

* removed some whitespace

* disabled ipv6 by default ╯︿╰ and changed some message wording

* added auto mode for autorun hostname and changed formatting for listening log and added goto message with autorun url

* added autorun port override

* removed debug log

* changed formatting

* added cli args to ipv6 and autorun stuff

* moved cli args around

* changed formatting

* changed colors for ip

* added avoidLocalhost cli arg

* changed formatting

* changed to not print protocol on listening

* added config option for avoid localhost and changed formatting of messages

* fixed avoid localhost config option

* Fix ipv4 color

---------

Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>
This commit is contained in:
BPplays
2024-08-15 10:12:12 -07:00
committed by GitHub
parent 3b46b5a46d
commit da5581e20e
4 changed files with 269 additions and 52 deletions

View File

@@ -4,8 +4,18 @@ dataRoot: ./data
# -- SERVER CONFIGURATION --
# Listen for incoming connections
listen: false
# Enables IPv6 and/or IPv4
protocol:
ipv4: true
ipv6: false
# Prefers IPv6 for dns, you should probably enable this on ISPs that don't have issues with IPv6
dnsPreferIPv6: false
# the hostname that autorun opens probably best left on auto. use options like 'localhost', 'st.example.com'
autorunHostname: "auto"
# Server port
port: 8000
# overrides the port for autorun with open your browser with this port and ignore what port the server is running on. -1 is use server port
autorunPortOverride: -1
# -- SECURITY CONFIGURATION --
# Toggle whitelist mode
whitelistMode: true
@@ -13,6 +23,7 @@ whitelistMode: true
enableForwardedWhitelist: true
# Whitelist of allowed IP addresses
whitelist:
- ::1
- 127.0.0.1
# Toggle basic authentication for endpoints
basicAuthMode: false
@@ -35,6 +46,9 @@ securityOverride: false
# -- ADVANCED CONFIGURATION --
# Open the browser automatically
autorun: true
# Avoids using 'localhost' for autorun in auto mode.
# use if you don't have 'localhost' in your hosts file
avoidLocalhost: false
# Disable thumbnail generation
disableThumbnails: false
# Thumbnail quality (0-100)