找回密码
 立即注册
查看: 1695|回复: 7

[求助] 猫盘群晖ipv6提交为内网地址,请教代码如何改成第二个IPV6...

[复制链接]
4 渣金 回复本帖可获得 1 渣金奖励! 每人限 1 次

9

主题

70

回帖

324

积分

中级渣柚V1

积分
324
发表于 2020-4-26 02:47:48 | 显示全部楼层 |阅读模式
从4月1日来到矿渣后,就仿佛打开了新世界,经常折腾到深夜,然后第二天伴随着黑眼圈和唠叨出门...! X- j- m& G5 g5 [6 N2 X/ t
明天,对了就是明天 又少不了一顿臭骂...& M; N7 l1 l9 v4 U- a
2 c- p& [, Q) \* F
百度搜到一大佬在张大妈上发布的aliddns教程,按照他的照抄结果脚本把内网ipv6地址传上去了,5 W8 X; \) J  u) \
; X( @1 p$ T3 |. t

" W$ B3 D8 B$ Y仔细一看他的教程中 ipv6地址栏 第一行地址就是外网地址,而我的是内网地址,
3 T4 Z  a! ~0 E7 H; L3 d2 @8 j( Z& W: m瞎子过河改了第20行 print $2 不行,33行tail -n4也不行,, v+ Q- U6 _6 _) Y) o
菜鸟看不懂代码,也不知道去哪问,希望能有路过的大神能指点下
/ b* Y+ E# \. \! b. z- R
3 V0 d# Y! K3 _

6 _$ ?: y! ^3 h1 n+ x( i* b4 k' B) L' H
ds120j.png 2 e0 {+ y+ G$ h) Z4 R- |/ B6 z( q

( q% r. J! e% ~, L
  1. aliddnsipv6_ak="aliddns_id"8 p0 L0 A+ ~( Q3 T* y0 M
  2. aliddnsipv6_sk="password_info"
    9 s0 F$ l# ^3 [' D
  3. aliddnsipv6_name1='nas'
    7 n* R9 W' e2 O' \$ Y( k, w
  4. aliddnsipv6_domain='mydomain.cn'
    : a" J5 i! t( s& e* N# D5 d
  5. aliddnsipv6_ttl="600"- @( D6 `0 T) p/ F9 x  |* O
  6. 1 A& M6 Z0 @9 s2 {, |, G6 L7 R% O
  7. if [ "$aliddnsipv6_name1" = "@" ]0 U" c7 q$ O3 g& m, X
  8. then* I/ b* |. f% A! Z, a% j# u
  9.   aliddnsipv6_name=$aliddnsipv6_domain  O6 J( o2 ^, y, p$ L/ M+ s6 U
  10. else
    7 k3 f7 }+ ^2 v8 \) D1 k+ G
  11.   aliddnsipv6_name=$aliddnsipv6_name1.$aliddnsipv6_domain4 f0 ^, ^/ z* M' C0 J8 |# c
  12. fi
    ' m- U1 E/ ~4 u/ V# ~0 F
  13. 1 v) @) D+ k* y* g: J' v1 S
  14. now=`date`2 m/ o# S8 _+ Q! D

  15. 8 {7 d% Z4 f; y8 J
  16. die () {+ A1 q( Z" H3 }# d- Z0 _  U, h
  17.     echo $1
    . n4 B1 @2 H8 t! [
  18. }
    * @1 t; y0 K" j* {! v) N- v3 v
  19. . }$ ]! ]3 O: E9 n3 D2 R3 b  `$ E
  20. ipv6s=`ip addr show eth0 | grep "inet6.*global" | awk '{print $1}' | awk -F"/" '{print $1}'` || die "$ipv6"4 K2 Q% j  D+ O; l' e4 Q4 b& I
  21. 2 S8 K1 Q: n" A  u. m4 p+ r
  22. for ipv6 in $ipv6s$ ?4 e: P3 @: f( E! Z% U3 M, F
  23. do
    ; {3 s1 T" }8 b: s
  24.   #ipv6 = $ipv60 `+ w  T2 x! t! y
  25.   break' x3 X* a3 a+ o0 {
  26. done
    , D1 }' @+ K4 p2 a4 k5 {1 e

  27. - G$ |. F' m8 e) [$ j) M. i. o
  28. echo $ipv6
    ( ^8 H. ?" f/ G$ x/ a" h& M

  29.   `% E$ {/ o- R, A- n
  30. current_ipv6=`nslookup -query=AAAA $aliddnsipv6_name 2>&1`
    ; E9 O% P4 }2 C
  31. #echo $current_ipv66 F3 i  n% O' F% |9 s0 ^: c
  32. . G5 U; b' D, _, u
  33. current_ipv6=`echo "$current_ipv6" | grep 'Address: ' | tail -n1 | awk '{print $NF}'`- E' ~6 a  @# W* r
  34. echo $current_ipv6
    + q3 r! H- m0 w. a
  35. 0 \2 q3 _+ q7 r
  36. if [ "$?" -eq "0" ]5 I% V8 X# e! A3 u6 `* w
  37. then
    $ {' P0 E! Z" V$ b2 u
  38.     current_ipv6=`echo "$current_ipv6" | grep 'Address: ' | tail -n1 | awk '{print $NF}'`% v4 q6 H( w3 L4 E; p7 Y
  39.     echo $current_ipv6
    " `) ~8 E1 ^$ p4 U% E$ g
  40. . s! y) v3 i6 m3 c/ j
  41.     if [ "$ipv6" = "$current_ipv6" ]
    " Q0 U' [/ Y- s9 Y# |5 |0 o* e
  42.     then9 `" D& \0 Y4 q" B* V) X% N
  43.         echo "skipping"
    ' h8 ~( V7 I% ?) X# X( ^5 K6 b
  44.     fi 0 x& b5 G+ z9 y# o8 H
  45. # fix when A record removed by manual dns is always update error
    8 {7 _/ U6 f' Y
  46. else/ k+ d+ l  q9 W6 q$ {3 G# w4 p
  47.     unset aliddnsipv6_record_id5 z( X2 O; H9 w  U& W) s' v
  48. fi
    ( F3 l5 h6 z3 v6 G; E* F8 U, Y+ d
  49. ! r; V: n+ X- i3 q7 o# q

  50. 0 L) F. E) L4 G$ N- G, p
  51. timestamp=`date -u "+%Y-%m-%dT%H%%3A%M%%3A%SZ"`( p! e' p, \5 H) ?  {" l- K* j

  52. : X; X) C2 w! {& k4 B  k

  53. 8 U8 E+ A) w: i8 m, d/ V7 ?
  54. urlencode() {# }8 E2 p, d6 R
  55.     # urlencode <string>% u1 q" @: T0 C8 P2 g. G$ U
  56.     out=""$ k+ z% N' q$ ^- c8 E) f
  57.     while read -n1 c; J( e9 Y* q4 ~5 t4 U  X* X
  58.     do
    9 ?) X5 M8 ~) U* |$ G
  59.         case $c in  j9 X% h, ?1 `' S( \- s. w0 V  ~
  60.             [a-zA-Z0-9._-]) out="$out$c" ;;) W6 O& V9 c9 V6 e! d) J
  61.             *) out="$out`printf '%%%02X' "'$c"`" ;;) H! T+ y/ G: [* q3 p. q
  62.         esac3 ]2 v4 R: M. x
  63.     done
    0 W$ }( L* U' W
  64.     echo -n $out
    % z8 g- G( P9 q  y' ]1 s4 m4 r% m
  65. }! I8 }. I" ~% k/ M9 k5 `

  66. ' L3 I9 _7 A  q. S" z" a, [( R) G% r
  67. enc() {$ T" X& a- c  h4 e; S% b
  68.     echo -n "$1" | urlencode( I$ j' ^' F9 n" w3 T" Q
  69. }9 i( T( [9 [; e$ t5 K' a2 e
  70. ' U, O8 P" s2 _- A. G4 f) x- Z
  71. send_request() {
      W: Q4 l9 t0 @# _' z" R
  72.     local args="AccessKeyId=$aliddnsipv6_ak&Action=$1&Format=json&$2&Version=2015-01-09"
    / j7 J/ W5 O5 u- ?% y" p
  73.     local hash=$(echo -n "GET&%2F&$(enc "$args")" | openssl dgst -sha1 -hmac "$aliddnsipv6_sk&" -binary | openssl base64)
    ! J; V3 B. U0 u% X3 H5 @. U
  74.     curl -s "http://alidns.aliyuncs.com/?$args&Signature=$(enc "$hash")"6 I  T9 i. F1 [2 y% c. A
  75. }
    & ]' z& n3 ~/ }' R# ]
  76. 7 d! I- j2 \( L
  77. get_recordid() {
      }' L# r, \0 {9 ?: W
  78.     grep -Eo '"RecordId":"[0-9]+"' | cut -d':' -f2 | tr -d '"'4 o9 i3 w" I! Y8 z$ y$ R/ c8 Y9 a
  79. }5 c  m- [" r& H$ T) s

  80. + j8 C1 f" }( i* G. U* M
  81. query_recordid() {2 L8 V4 r! `$ M; `7 r% V" y
  82.     send_request "DescribeSubDomainRecords" "SignatureMethod=HMAC-SHA1&SignatureNonce=$timestamp&SignatureVersion=1.0&SubDomain=$aliddnsipv6_name&Timestamp=$timestamp&Type=AAAA"
    + S5 l# J/ l: L/ `0 D  l3 K# V
  83. }
    ; E7 G  H) [, q8 I( }
  84. + O' M% m8 w7 E  @0 k0 M$ ?5 D# H' `
  85. update_record() {
    , f! d6 M* [5 c  Z7 `
  86.     send_request "UpdateDomainRecord" "RR=$aliddnsipv6_name1&RecordId=$1&SignatureMethod=HMAC-SHA1&SignatureNonce=$timestamp&SignatureVersion=1.0&TTL=$aliddnsipv6_ttl&Timestamp=$timestamp&Type=AAAA&Value=$(enc $ipv6)"
    $ |8 ~9 p& U  T4 n
  87. }
    . M6 b$ |  @+ d8 W$ J4 w' k5 \2 a

  88. 1 g) n% C) d3 L9 m- x
  89. add_record() {" D2 d" S8 t! J/ _0 T8 K9 C$ M
  90.     send_request "AddDomainRecord&DomainName=$aliddnsipv6_domain" "RR=$aliddnsipv6_name1&SignatureMethod=HMAC-SHA1&SignatureNonce=$timestamp&SignatureVersion=1.0&TTL=$aliddnsipv6_ttl&Timestamp=$timestamp&Type=AAAA&Value=$(enc $ipv6)"
    4 e4 j8 S% X2 m: H9 W
  91. }/ @' ]: ?: Q( u+ V/ `" w* C
  92. 8 z3 s# l" X6 l1 J" k/ ?
  93. #add support */%2A and @/%40 record
    , E  y0 t0 b) P$ d9 Z
  94. 8 }+ ]) B$ ^' j7 k4 [9 {

  95. ) V2 N$ d* D0 p9 B
  96. if [ "$aliddnsipv6_record_id" = "" ]% g) Q& ]3 t( w; g# q! z7 [7 Q
  97. then
    $ ~& k# h; C9 q/ H" a
  98.     aliddnsipv6_record_id=`query_recordid | get_recordid`+ U8 S9 b* j4 M7 Z9 e2 `- c1 j( b
  99.     #echo '-----------------' $aliddnsipv6_record_id
    3 t( c* e- z9 n" f" N
  100. fi
    ( b# @' H! h* N, p+ A
  101. if [ "$aliddnsipv6_record_id" = "" ]
    % v8 k4 d0 W; g8 r
  102. then* y- a$ k7 {' l1 ~2 i0 _# D
  103.     aliddnsipv6_record_id=`add_record | get_recordid`
    / A2 m) m2 v6 \3 n" X
  104.     echo "added record $aliddnsipv6_record_id"
    9 O! X& E& w+ J* C  O( A
  105. else# q7 l* T6 {4 V" U! p- F1 }9 \
  106.     update_record $aliddnsipv6_record_id
    , U0 \% K4 \, b+ R0 Y* U9 m# `
  107.     echo "updated record $aliddnsipv6_record_id"2 x8 Q6 D# M9 d* E4 |: j, i% R* O
  108. fi- Z* f% B0 u8 k7 k* ^) e' b% ]
  109. & x* V7 K* x2 M: C
复制代码

5 T+ d4 ~' O  a- x8 I/ L3 ?0 J
% `" c2 X8 ~4 r2 L1 r3 h4 ~6 J. p% m( q$ D7 l1 e' O0 l

5

主题

61

回帖

156

积分

初级渣柚V2

积分
156
发表于 2020-4-26 09:45:38 | 显示全部楼层

回帖奖励 +1 渣金

大神赶紧来研究, 可惜我安装的高恪, 应该不支持ipv6

4

主题

82

回帖

420

积分

中级渣柚V1

积分
420
发表于 2020-4-26 10:19:36 | 显示全部楼层

回帖奖励 +1 渣金

GitHub上有python的的ddns 脚本,https://github.com/NewFuture/DDNS,3 Y; l1 N. m$ o4 d/ K4 N7 P# ^" ]
修改一下配置文件就可以上传ipv6地址了

4

主题

50

回帖

256

积分

中级渣柚V1

积分
256
发表于 2020-4-27 14:19:36 | 显示全部楼层

回帖奖励 +1 渣金

路过,不懂

0

主题

19

回帖

42

积分

初级渣柚V1

积分
42
发表于 2020-4-27 16:34:28 | 显示全部楼层

回帖奖励 +1 渣金

可能是你路由器设置问题,或者群晖网络手动可以固定ipv6试试

1

主题

5

回帖

55

积分

初级渣柚V2

积分
55
发表于 2020-5-10 00:16:43 | 显示全部楼层

回帖奖励 +1 渣金

吃金   谢谢楼主   祝楼主早日解决问题

2

主题

41

回帖

179

积分

初级渣柚V2

积分
179
QQ
发表于 2020-5-11 13:45:56 | 显示全部楼层

回帖奖励 +1 渣金

我的路由不支持ipv6,得到的只是fe80开头的

9

主题

70

回帖

324

积分

中级渣柚V1

积分
324
 楼主| 发表于 2020-6-9 16:38:43 | 显示全部楼层
wangyefengol 发表于 2020-4-27 01:04: `% Q$ Z- R; m, w, R7 ^, J: X
可能是你路由器设置问题,或者群晖网络手动可以固定ipv6试试
# l1 ]% j/ m% r  r
的确是路由器问题,谢谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|矿渣社区 ( 黔ICP备2024020525号-1 )

GMT+8, 2025-8-8 20:00 , Processed in 0.080246 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表