Location 1: a random public IPv4-only access network
parent
b787109ef2
commit
8a516f5307
@ -0,0 +1,6 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
. ./lib.shs
|
||||
. machines/$mach/opts.shs
|
||||
|
||||
nsenter --wdns=$nethorror_root $namespaces "$@"
|
@ -0,0 +1,3 @@
|
||||
#!/bin/false
|
||||
|
||||
namespaces="--net=./state/$mach/netns --mount=./state/$mach/mntns"
|
@ -0,0 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -eu
|
||||
. ./lib.shs
|
||||
|
||||
ensure_started
|
||||
attach machines/$mach/setup.sh
|
@ -0,0 +1,26 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
. ./lib.shs
|
||||
|
||||
# typically: bring up the networks
|
||||
ip link set dev lo up
|
||||
|
||||
setup_for_router
|
||||
|
||||
# uplink
|
||||
# glue networks for both AFs
|
||||
ip addr add 100.64.254.2/30 dev up_ve
|
||||
ip addr add 2a01:4f8:c0c:36b8:fffe::2/126 dev up_ve
|
||||
# (cg)NAT: use 10.0.0.0/24 inside the network and 192.168.0.1/24 for the client network
|
||||
nft add table ip nat
|
||||
nft add chain ip nat postrouting { type nat hook postrouting priority srcnat \; }
|
||||
nft add rule ip nat postrouting oifname \"up_ve\" ip saddr 10.0.0.0/24 masquerade
|
||||
ip link set dev up_ve up
|
||||
ip route add default via 100.64.254.1 dev up_ve
|
||||
ip route add default via 2a01:4f8:c0c:36b8:fffe::1 dev up_ve
|
||||
|
||||
# network for APs
|
||||
ip addr add 10.0.0.1/24 dev ap_ve
|
||||
# No IPv6 at public spaces lol
|
||||
ip link set dev ap_ve up
|
@ -0,0 +1,11 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
. ./lib.shs
|
||||
. machines/$mach/opts.shs
|
||||
|
||||
setup_statedir
|
||||
|
||||
unshare $namespaces /bin/true # just create the namespaces
|
||||
|
||||
veth_to_bridge up_ve loc1_up ve_loc1up_gw
|
||||
veth_to_bridge ap_ve loc1_ap
|
@ -0,0 +1,5 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
. ./lib.shs
|
||||
make_bridge
|
@ -0,0 +1,5 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
. ./lib.shs
|
||||
make_bridge
|
Loading…
Reference in New Issue