diff --git a/etc/systemd/network/3.releases.grapheneos.org.link b/etc/systemd/network/3.releases.grapheneos.org.link new file mode 100644 index 0000000..15e59d8 --- /dev/null +++ b/etc/systemd/network/3.releases.grapheneos.org.link @@ -0,0 +1,5 @@ +[Match] +MACAddress=d0:50:99:fd:d2:9a + +[Link] +Name=public diff --git a/etc/systemd/network/3.releases.grapheneos.org.network b/etc/systemd/network/3.releases.grapheneos.org.network new file mode 100644 index 0000000..00249d0 --- /dev/null +++ b/etc/systemd/network/3.releases.grapheneos.org.network @@ -0,0 +1,15 @@ +[Match] +Name=public + +[Network] +LinkLocalAddressing=no +Address=45.88.230.12/24 + +[Route] +Destination=0.0.0.0/0 +Gateway=45.88.230.1 +PreferredSource=45.88.230.12 + +[Route] +Destination=45.88.230.1 +PreferredSource=45.88.230.12 diff --git a/etc/systemd/system/3.releases.grapheneos.org.fq.service b/etc/systemd/system/3.releases.grapheneos.org.fq.service new file mode 100644 index 0000000..adaee64 --- /dev/null +++ b/etc/systemd/system/3.releases.grapheneos.org.fq.service @@ -0,0 +1,42 @@ +[Unit] +Requires=sys-subsystem-net-devices-public.device +After=sys-subsystem-net-devices-public.device + +[Service] +Type=oneshot +ExecStart=/usr/bin/tc qdisc replace dev public root handle 1 mq +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:1 handle 1001 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:2 handle 1002 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:3 handle 1003 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:4 handle 1004 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:5 handle 1005 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:6 handle 1006 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:7 handle 1007 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:8 handle 1008 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:9 handle 1009 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:a handle 100a fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:b handle 100b fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:c handle 100c fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:d handle 100d fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:e handle 100e fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:f handle 100f fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:10 handle 1010 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:11 handle 1011 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:12 handle 1012 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:13 handle 1013 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:14 handle 1014 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:15 handle 1015 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:16 handle 1016 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:17 handle 1017 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:18 handle 1018 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:19 handle 1019 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:1a handle 101a fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:1b handle 101b fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:1c handle 101c fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:1d handle 101d fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:1e handle 101e fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:1f handle 101f fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 +ExecStart=/usr/bin/tc qdisc replace dev public parent 1:20 handle 1020 fq bands 3 priomap 1 2 2 2 0 2 0 0 1 1 1 1 1 1 1 1 + +[Install] +WantedBy=sys-subsystem-net-devices-public.device diff --git a/hosts.sh b/hosts.sh index 66855a6..d1bd7fa 100644 --- a/hosts.sh +++ b/hosts.sh @@ -20,6 +20,7 @@ declare -Ar hosts_hostname=( [0.releases.grapheneos.org]=0-releases [1.releases.grapheneos.org]=1-releases [2.releases.grapheneos.org]=2-releases + [3.releases.grapheneos.org]=3-releases [staging.attestation.app]=staging-attestation [attestation.app]=attestation [matrix.grapheneos.org]=matrix @@ -31,18 +32,21 @@ declare -Ar hosts_uefi=( [0.releases.grapheneos.org]=true [1.releases.grapheneos.org]=true [2.releases.grapheneos.org]=true + [3.releases.grapheneos.org]=true ) declare -Ar hosts_metal=( [0.releases.grapheneos.org]=true [1.releases.grapheneos.org]=true [2.releases.grapheneos.org]=true + [3.releases.grapheneos.org]=true ) declare -Ar hosts_hardware_watchdog=( [0.releases.grapheneos.org]=true [1.releases.grapheneos.org]=true [2.releases.grapheneos.org]=true + [3.releases.grapheneos.org]=true ) declare -Ar hosts_authorized_keys=( @@ -59,6 +63,7 @@ declare -Ar hosts_authorized_keys=( [3.grapheneos.network]=authorized_keys-replica-network [1.releases.grapheneos.org]=authorized_keys-replica-releases [2.releases.grapheneos.org]=authorized_keys-replica-releases + [3.releases.grapheneos.org]=authorized_keys-replica-releases [staging.attestation.app]=authorized_keys-staging-attestation ) @@ -81,6 +86,7 @@ declare -Ar hosts_firewall=( [0.releases.grapheneos.org]=web-fq [1.releases.grapheneos.org]=web-fq [2.releases.grapheneos.org]=web-fq + [3.releases.grapheneos.org]=web-fq [staging.attestation.app]=attestation-fq [attestation.app]=attestation [matrix.grapheneos.org]=matrix @@ -92,6 +98,7 @@ declare -Ar hosts_swap=( [0.releases.grapheneos.org]=32768 [1.releases.grapheneos.org]=32768 [2.releases.grapheneos.org]=32768 + [3.releases.grapheneos.org]=32768 [attestation.app]=4096 [matrix.grapheneos.org]=8192 [discuss.grapheneos.org]=4096 @@ -102,6 +109,7 @@ declare -Ar hosts_agcount=( [0.releases.grapheneos.org]=32 [1.releases.grapheneos.org]=24 [2.releases.grapheneos.org]=24 + [3.releases.grapheneos.org]=32 ) declare -Ar hosts_reserved_ports=( @@ -117,6 +125,7 @@ declare -Ar hosts_tcp_wmem_max=( [0.releases.grapheneos.org]=33554432 [1.releases.grapheneos.org]=33554432 [2.releases.grapheneos.org]=33554432 + [3.releases.grapheneos.org]=33554432 [matrix.grapheneos.org]=16777216 ) @@ -153,6 +162,7 @@ declare -Ar hosts_conntrack_size=( [0.releases.grapheneos.org]=8388608 [1.releases.grapheneos.org]=12582912 [2.releases.grapheneos.org]=12582912 + [3.releases.grapheneos.org]=8388608 [staging.attestation.app]=65536 [attestation.app]=131072 [matrix.grapheneos.org]=131072 @@ -178,6 +188,7 @@ declare -Ar hosts_journald_system_max_use=( [0.releases.grapheneos.org]=64G [1.releases.grapheneos.org]=64G [2.releases.grapheneos.org]=64G + [3.releases.grapheneos.org]=64G ) declare -Ar hosts_journald_system_max_file_size=( @@ -192,6 +203,7 @@ declare -Ar hosts_journald_system_max_file_size=( [0.releases.grapheneos.org]=4G [1.releases.grapheneos.org]=4G [2.releases.grapheneos.org]=4G + [3.releases.grapheneos.org]=4G [matrix.grapheneos.org]=1G [discuss.grapheneos.org]=1G [grapheneos.social]=1G @@ -249,6 +261,7 @@ declare -Ar hosts_ipv4_address=( [0.releases.grapheneos.org]=45.90.185.33 [1.releases.grapheneos.org]=172.96.172.37 [2.releases.grapheneos.org]=104.194.8.203 + [3.releases.grapheneos.org]=45.88.230.12 [staging.attestation.app]=198.98.57.157 [attestation.app]=51.79.66.27 [matrix.grapheneos.org]=51.79.51.42 @@ -340,7 +353,7 @@ readonly hosts_grapheneos_all=( ) readonly hosts_releases=( - {0..2}.releases.grapheneos.org + {0..3}.releases.grapheneos.org ) readonly hosts_network=(