| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- #!/usr/bin/env bash
- set -euo pipefail
- CHAIN4="MYNETSPEEDER"
- CHAIN6="MYNETSPEEDER6"
- PID_FILE="/var/run/mynetspeeder-edge.pid"
- SOCKS_PID_FILE="/var/run/mynetspeeder-socks.pid"
- if [[ $EUID -ne 0 ]]; then
- echo "need root"
- exit 1
- fi
- if [[ -f "$PID_FILE" ]]; then
- kill "$(cat "$PID_FILE")" 2>/dev/null || true
- rm -f "$PID_FILE"
- fi
- if [[ -f "$SOCKS_PID_FILE" ]]; then
- kill "$(cat "$SOCKS_PID_FILE")" 2>/dev/null || true
- rm -f "$SOCKS_PID_FILE"
- fi
- pkill -f 'python3 -m mynetspeeder edge' || true
- pkill -f 'python3 -m mynetspeeder socks' || true
- if iptables -t nat -S >/dev/null 2>&1; then
- iptables -t nat -D OUTPUT -p tcp -j "$CHAIN4" 2>/dev/null || true
- iptables -t nat -D OUTPUT -p udp -j "$CHAIN4" 2>/dev/null || true
- iptables -t nat -F "$CHAIN4" 2>/dev/null || true
- iptables -t nat -X "$CHAIN4" 2>/dev/null || true
- fi
- if command -v ip6tables >/dev/null 2>&1; then
- if ip6tables -t nat -S >/dev/null 2>&1; then
- ip6tables -t nat -D OUTPUT -p tcp -j "$CHAIN6" 2>/dev/null || true
- ip6tables -t nat -D OUTPUT -p udp -j "$CHAIN6" 2>/dev/null || true
- ip6tables -t nat -F "$CHAIN6" 2>/dev/null || true
- ip6tables -t nat -X "$CHAIN6" 2>/dev/null || true
- else
- echo "ipv6 nat unavailable: skip ipv6 transparent cleanup"
- fi
- fi
- echo "mynetspeeder transparent mode stopped"
|