shfmt tunsocks.sh
This commit is contained in:
		
							
								
								
									
										46
									
								
								tunsocks.sh
									
									
									
									
									
								
							
							
						
						
									
										46
									
								
								tunsocks.sh
									
									
									
									
									
								
							@@ -8,38 +8,36 @@ nsname="$1"
 | 
			
		||||
device="tun${nsname}"
 | 
			
		||||
ns="${nsname}ns"
 | 
			
		||||
 | 
			
		||||
if [ "$2" = use_env ];then
 | 
			
		||||
		proxy="$SOCKS_PROXY"
 | 
			
		||||
		shift
 | 
			
		||||
if [ "$2" = use_env ]; then
 | 
			
		||||
	proxy="$SOCKS_PROXY"
 | 
			
		||||
	shift
 | 
			
		||||
else
 | 
			
		||||
		proxy="socks5:///run/nnss-${nsname}/sock"
 | 
			
		||||
	proxy="socks5:///run/nnss-${nsname}/sock"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
setup()
 | 
			
		||||
{
 | 
			
		||||
		ip tuntap add mode tun dev "$device"
 | 
			
		||||
setup() {
 | 
			
		||||
	ip tuntap add mode tun dev "$device"
 | 
			
		||||
 | 
			
		||||
		/usr/bin/tun2socks -device "$device" -proxy "$proxy" &
 | 
			
		||||
		echo "$!" > "$pidfile"
 | 
			
		||||
		sleep 5
 | 
			
		||||
	/usr/bin/tun2socks -device "$device" -proxy "$proxy" &
 | 
			
		||||
	echo "$!" >"$pidfile"
 | 
			
		||||
	sleep 5
 | 
			
		||||
 | 
			
		||||
		ip netns add "$ns"
 | 
			
		||||
		ip link set "$device" netns "$ns"
 | 
			
		||||
	ip netns add "$ns"
 | 
			
		||||
	ip link set "$device" netns "$ns"
 | 
			
		||||
 | 
			
		||||
		ip -n "$ns" addr add 198.19.1.1/30 dev "$device"
 | 
			
		||||
		ip -n "$ns" link set dev "$device" up
 | 
			
		||||
		ip -n "$ns" route add default via 198.19.1.1 dev "$device" metric 100
 | 
			
		||||
		ip -n "$ns" link set lo up
 | 
			
		||||
		systemd-notify --ready
 | 
			
		||||
		wait
 | 
			
		||||
	ip -n "$ns" addr add 198.19.1.1/30 dev "$device"
 | 
			
		||||
	ip -n "$ns" link set dev "$device" up
 | 
			
		||||
	ip -n "$ns" route add default via 198.19.1.1 dev "$device" metric 100
 | 
			
		||||
	ip -n "$ns" link set lo up
 | 
			
		||||
	systemd-notify --ready
 | 
			
		||||
	wait
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
cleanup()
 | 
			
		||||
{
 | 
			
		||||
		ip tuntap del mode tun dev "$device" || true
 | 
			
		||||
		kill "$(cat "$pidfile")"
 | 
			
		||||
		ip -n "$ns" tuntap del mode tun dev "$device"
 | 
			
		||||
		ip netns del "$ns"
 | 
			
		||||
cleanup() {
 | 
			
		||||
	ip tuntap del mode tun dev "$device" || true
 | 
			
		||||
	kill "$(cat "$pidfile")"
 | 
			
		||||
	ip -n "$ns" tuntap del mode tun dev "$device"
 | 
			
		||||
	ip netns del "$ns"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
$2
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user