diff --git a/src/os.c b/src/os.c index d5e4482..ee525aa 100644 --- a/src/os.c +++ b/src/os.c @@ -445,20 +445,25 @@ Cmds firewall_rules_cmds(int is_server) #ifdef __linux__ static const char *set_cmds[] = - { "sysctl net.ipv4.ip_forward=1", - "ip addr add $LOCAL_TUN_IP peer $REMOTE_TUN_IP dev $IF_NAME", + { "ip addr add $LOCAL_TUN_IP peer $REMOTE_TUN_IP dev $IF_NAME", "ip -6 addr add $LOCAL_TUN_IP6 peer $REMOTE_TUN_IP6/96 dev $IF_NAME", "ip link set dev $IF_NAME up", +#ifndef NO_DEFAULT_FIREWALL + "sysctl net.ipv4.ip_forward=1", "iptables -t nat -A POSTROUTING -o $EXT_IF_NAME -s $REMOTE_TUN_IP -j MASQUERADE", "iptables -t filter -A FORWARD -i $EXT_IF_NAME -o $IF_NAME -m state --state " "RELATED,ESTABLISHED -j ACCEPT", "iptables -t filter -A FORWARD -i $IF_NAME -o $EXT_IF_NAME -j ACCEPT", +#endif NULL }, *unset_cmds[] = { +#ifndef NO_DEFAULT_FIREWALL "iptables -t nat -D POSTROUTING -o $EXT_IF_NAME -s $REMOTE_TUN_IP -j MASQUERADE", "iptables -t filter -D FORWARD -i $EXT_IF_NAME -o $IF_NAME -m state --state " "RELATED,ESTABLISHED -j ACCEPT", - "iptables -t filter -D FORWARD -i $IF_NAME -o $EXT_IF_NAME -j ACCEPT", NULL + "iptables -t filter -D FORWARD -i $IF_NAME -o $EXT_IF_NAME -j ACCEPT", +#endif + NULL }; #elif defined(__APPLE__) || defined(__OpenBSD__) || defined(__FreeBSD__) || \ defined(__DragonFly__) || defined(__NetBSD__) @@ -492,7 +497,10 @@ Cmds firewall_rules_cmds(int is_server) }; #elif defined(__linux__) static const char - *set_cmds[] = { "sysctl net.ipv4.tcp_congestion_control=bbr", + *set_cmds[] = { +#ifndef NO_DEFAULT_CONGESTION + "sysctl net.ipv4.tcp_congestion_control=bbr", +#endif "ip link set dev $IF_NAME up", "ip addr add $LOCAL_TUN_IP peer $REMOTE_TUN_IP dev $IF_NAME", "ip -6 addr add $LOCAL_TUN_IP6 peer $REMOTE_TUN_IP6/96 dev $IF_NAME", @@ -505,9 +513,13 @@ Cmds firewall_rules_cmds(int is_server) "ip -6 rule add table main suppress_prefixlength 0", #endif NULL }, - *unset_cmds[] = { "ip rule delete table 42069", "ip -6 rule delete table 42069", + *unset_cmds[] = { +#ifndef NO_DEFAULT_ROUTES + "ip rule delete table 42069", "ip -6 rule delete table 42069", "ip rule delete table main suppress_prefixlength 0", - "ip -6 rule delete table main suppress_prefixlength 0", NULL }; + "ip -6 rule delete table main suppress_prefixlength 0", +#endif + NULL }; #else static const char *const *set_cmds = NULL, *const *unset_cmds = NULL; #endif