Browse Source

Fixes kcptun with ipv6 address.

Qiu Yuzhou 5 years ago
parent
commit
ec771d5bc8
1 changed files with 14 additions and 1 deletions
  1. 14 1
      ShadowsocksX-NG/kcptun/kcptun.sh

+ 14 - 1
ShadowsocksX-NG/kcptun/kcptun.sh

@@ -39,5 +39,18 @@ PLUGIN_BINARY_NAME="client"
 
 CMD="$(dirname "${BASH_SOURCE[0]}")/../${PLUGIN_NAME}_${PLUGIN_VERSION}/${PLUGIN_BINARY_NAME}"
 
+if  [[ $SS_REMOTE_HOST == *":"* ]]; then
+    SS_REMOTE_ADDR="[${SS_REMOTE_HOST}]:${SS_REMOTE_PORT}"
+else
+    SS_REMOTE_ADDR="${SS_REMOTE_HOST}:${SS_REMOTE_PORT}"
+fi
+
+if  [[ $SS_LOCAL_HOST == *":"* ]]; then
+    SS_LOCAL_ADDR="[${SS_LOCAL_HOST}]:${SS_LOCAL_PORT}"
+else
+    SS_LOCAL_ADDR="${SS_LOCAL_HOST}:${SS_LOCAL_PORT}"
+fi
+
 # Update this line when adapted other plugin.
-"$CMD" -r "${SS_REMOTE_HOST}:${SS_REMOTE_PORT}" -l "${SS_LOCAL_HOST}:${SS_LOCAL_PORT}" ${OPTS[@]}
+# echo -r "${SS_REMOTE_ADDR}" -l "${SS_LOCAL_ADDR}" ${OPTS[@]}
+"$CMD" -r "${SS_REMOTE_ADDR}" -l "${SS_LOCAL_ADDR}" ${OPTS[@]}