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

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

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

9

主题

70

回帖

324

积分

中级渣柚V1

积分
324
边缘 发表于 2020-4-26 02:47:48 | 显示全部楼层 |阅读模式 IP:–河南–南阳 电信
从4月1日来到矿渣后,就仿佛打开了新世界,经常折腾到深夜,然后第二天伴随着黑眼圈和唠叨出门...7 @4 p# u6 _$ y* U+ N( ]  ?6 V& _
明天,对了就是明天 又少不了一顿臭骂...
- J, }6 h2 R! h% K. f( z  b, ~
- e5 v2 R* |; }' A百度搜到一大佬在张大妈上发布的aliddns教程,按照他的照抄结果脚本把内网ipv6地址传上去了,
9 y- s& w* ]) y3 W, v
$ o5 x( `) U8 u$ [) L. m- |% o& R' F7 t3 V' d2 u
仔细一看他的教程中 ipv6地址栏 第一行地址就是外网地址,而我的是内网地址,
+ Z8 o; Z! Q, b6 k2 n4 S' p1 {瞎子过河改了第20行 print $2 不行,33行tail -n4也不行,. \( ?5 E+ S3 d' A: j' [
菜鸟看不懂代码,也不知道去哪问,希望能有路过的大神能指点下) g( k! o. J  N' M7 X
/ @% a0 y, T/ q
; H7 f; P% |8 a) y0 o) l, ]

( P5 v% T/ o! K* q: q2 H ds120j.png
% V+ a9 F' R# `4 T4 A- `9 F
' a2 P: Y7 d8 \
  1. aliddnsipv6_ak="aliddns_id"
    * g) J( B3 D$ ]0 X0 U  I
  2. aliddnsipv6_sk="password_info"! G. I+ ~, O  L, |: T- c1 p# q! y3 J
  3. aliddnsipv6_name1='nas'
    , X) e0 o3 k' o' y, u3 ?/ R
  4. aliddnsipv6_domain='mydomain.cn'
    9 Y+ @7 M0 x2 N
  5. aliddnsipv6_ttl="600"
    : h$ U7 o% G7 D' Z$ h
  6. 6 |( |" }" _# x
  7. if [ "$aliddnsipv6_name1" = "@" ], [, c. P- X2 O2 w
  8. then
    , K8 D" u3 [- q. f, f: I) W
  9.   aliddnsipv6_name=$aliddnsipv6_domain9 g5 A( L; N' o! c4 B; l) ?
  10. else" e! Q* l9 e& d
  11.   aliddnsipv6_name=$aliddnsipv6_name1.$aliddnsipv6_domain
    - \; \8 S# w: K  ^
  12. fi8 J. ^( `' y) o: s' J: n7 J
  13.   j- _% x1 K( q2 [
  14. now=`date`. i) R: t( G0 C$ C
  15. / H: J8 @. O, u/ p2 J. h! l
  16. die () {
    : i' v" J7 h: _) I
  17.     echo $1
    ; j: A( `$ A* d% P* J- s
  18. }
    / e5 @) q' h8 H" `! N; p

  19. 3 @  ?  D8 i, X
  20. ipv6s=`ip addr show eth0 | grep "inet6.*global" | awk '{print $1}' | awk -F"/" '{print $1}'` || die "$ipv6"
    2 B0 K: @9 p. R

  21. 9 t& F9 }8 o  O5 ^  L7 i2 n
  22. for ipv6 in $ipv6s
    ( ~$ k7 c3 X/ r) e2 @
  23. do
    7 E. N. U& I8 |8 z9 D% w
  24.   #ipv6 = $ipv6( T* A& F1 o' J# y+ ^
  25.   break
    5 s# F7 c2 e# k4 p1 |7 v
  26. done
    1 P$ m" A) N8 D3 A& u8 U$ a

  27. , Q' O7 k* T7 k: \
  28. echo $ipv6' [! f0 h5 A/ {! N0 a* T, ?

  29. 6 O0 F5 T5 ]$ g1 Y0 q
  30. current_ipv6=`nslookup -query=AAAA $aliddnsipv6_name 2>&1`
    7 V. K# ]: b2 B2 j
  31. #echo $current_ipv6; k$ z& O! [- z  `' N6 f
  32. 5 @' f/ s7 X& A6 A# w6 o
  33. current_ipv6=`echo "$current_ipv6" | grep 'Address: ' | tail -n1 | awk '{print $NF}'`
    % y, i3 R8 N! ^: `8 R
  34. echo $current_ipv6
    + A$ }! e% Q) o1 p' g& _( u0 J
  35. " O: Z9 h; d4 [/ Z% [+ ?# `
  36. if [ "$?" -eq "0" ]
    1 n/ ^0 j' y- F2 k4 w
  37. then
    5 Y. j* N0 g9 a( K  a" M6 s; W+ Q6 `
  38.     current_ipv6=`echo "$current_ipv6" | grep 'Address: ' | tail -n1 | awk '{print $NF}'`
    5 {  x' p: F/ @2 B
  39.     echo $current_ipv6
    $ l7 j+ W; n% J

  40. / A+ `' x( v8 K/ \  d8 L
  41.     if [ "$ipv6" = "$current_ipv6" ]
    : C: p9 l8 z3 W: r- A4 }/ B
  42.     then7 a& `% a- @/ w) L. D9 D, N, B
  43.         echo "skipping"5 W3 P# T7 ^$ j. ~7 i# P
  44.     fi
    4 r0 n9 _+ I' D/ R
  45. # fix when A record removed by manual dns is always update error
    6 i7 p; q% Z: d9 l# C, g/ d
  46. else
    2 K2 }* p! f+ X& m
  47.     unset aliddnsipv6_record_id
    ( e% @  r  t- p0 Z& X
  48. fi
    * ?0 L7 [, s$ Q0 d& g) Z
  49. + L7 T/ y/ [; F  b% L$ ^% `& ]3 D

  50. " b. y, y8 W2 {1 k9 P% O
  51. timestamp=`date -u "+%Y-%m-%dT%H%%3A%M%%3A%SZ"`
    7 y; \. {, }; S

  52. 7 D" u, G  ^) [4 j9 F
  53. 6 P& e  I% {, ]+ r& n
  54. urlencode() {  ]7 Q0 n: C" q6 h/ _
  55.     # urlencode <string>
    - Y0 x5 n2 O5 Q4 u, s3 W' P) x
  56.     out=""
    7 g, ?9 }/ y* J* o
  57.     while read -n1 c' f% c+ m9 R8 `& ?) _* m' q
  58.     do* k1 U' w* Y2 A5 ]( n+ v
  59.         case $c in, i9 X; J6 @  y- L) l% M! P
  60.             [a-zA-Z0-9._-]) out="$out$c" ;;. y, E, F! l5 @. B
  61.             *) out="$out`printf '%%%02X' "'$c"`" ;;
    + z3 ~# Q% @% o. {* N$ ^
  62.         esac
    8 ~0 |- m- m) W4 n$ a0 Z7 F( ?
  63.     done
    % `: R' r# F2 A4 a& W# Z
  64.     echo -n $out( L" A6 C% k( r. [8 B3 I) V) t* C
  65. }- t; |' P4 d9 D2 j+ _0 @0 x) @

  66.   J% `- b8 r0 _: x- [8 z
  67. enc() {
    - l4 ?' _  T6 h/ ~" ], G0 M
  68.     echo -n "$1" | urlencode, ^- C8 M9 a/ B( n4 A' }9 B9 v" v% Q! _
  69. }
      h3 `! {, W; u6 Y

  70. . O; v+ r3 I7 y; H" H
  71. send_request() {
    7 d0 u* r, k* g6 ]
  72.     local args="AccessKeyId=$aliddnsipv6_ak&Action=$1&Format=json&$2&Version=2015-01-09"
    * P" p  {; {2 H4 ?) g
  73.     local hash=$(echo -n "GET&%2F&$(enc "$args")" | openssl dgst -sha1 -hmac "$aliddnsipv6_sk&" -binary | openssl base64)- `/ ?+ H/ U( M# s1 s1 z
  74.     curl -s "http://alidns.aliyuncs.com/?$args&Signature=$(enc "$hash")"' t7 U" g3 b- v+ _3 v& E! W
  75. }
    4 o3 f7 u7 I7 @2 d& L

  76. 7 a5 B; c( V2 M+ V- o
  77. get_recordid() {
      |  ^8 i3 ^5 ~
  78.     grep -Eo '"RecordId":"[0-9]+"' | cut -d':' -f2 | tr -d '"'
    ' R$ r: N- Y- _9 v' i! j0 f
  79. }, V: a; [6 {% c' m% H, r: V& Z

  80. 1 K% y0 e% S9 m
  81. query_recordid() {6 s6 O! K& k1 t9 J. F9 j
  82.     send_request "DescribeSubDomainRecords" "SignatureMethod=HMAC-SHA1&SignatureNonce=$timestamp&SignatureVersion=1.0&SubDomain=$aliddnsipv6_name&Timestamp=$timestamp&Type=AAAA") g- Q" m6 M+ _- A- \
  83. }. X; f" n1 T. C) P6 d' v
  84. ' u7 S7 `* G3 }$ ?2 e
  85. update_record() {
    4 P$ m  B$ W. i# R; X% Q
  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)"' C$ d9 p# d0 g5 k0 r; ^2 l, U
  87. }
    . B  F- R/ X4 ]/ M" R' E

  88. 5 w, N( J0 N9 `) q9 }9 Z
  89. add_record() {
    & M' c7 N, Q1 j0 g( l
  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)"
    5 @2 o% Q4 q3 V- v
  91. }
    $ m; E( I" o1 k. c6 e9 }# c* u

  92. 9 q: B* ]9 C# z
  93. #add support */%2A and @/%40 record1 O  S3 w* \7 \9 r% b3 x5 O

  94. 0 Q, x3 @: t+ ^. ~2 B9 i

  95. , d; i5 F) M2 {' c7 G' x
  96. if [ "$aliddnsipv6_record_id" = "" ]5 c+ O" {" ]" I  C! B
  97. then8 ?1 _! a( `: x( R
  98.     aliddnsipv6_record_id=`query_recordid | get_recordid`
    4 l! z7 P2 E4 W; m0 h
  99.     #echo '-----------------' $aliddnsipv6_record_id
    7 W9 i$ i( S) o9 A' W. D
  100. fi9 Q' z$ }) f& T, N, {* F
  101. if [ "$aliddnsipv6_record_id" = "" ]
    ' s6 j9 k" ?* Y" ]: H
  102. then. I9 _' @) J9 g% t
  103.     aliddnsipv6_record_id=`add_record | get_recordid`
    6 W4 C: m7 u  c0 H
  104.     echo "added record $aliddnsipv6_record_id"8 V; m) r. Y: G, z$ e7 ]1 C
  105. else
    % ?# N+ K1 _7 x8 n' K4 b0 A' W
  106.     update_record $aliddnsipv6_record_id' X8 Y  P( p! ^: v. j1 R$ d+ O
  107.     echo "updated record $aliddnsipv6_record_id"
    ( L$ l& |/ o6 P; Z* |) o2 S, H
  108. fi
    3 }6 e, d, c7 q7 X! s
  109. * k7 g' [. K7 F5 Y
复制代码

2 e; F2 u$ V, y, Y' v
- F. m% `# \* o: V0 R
% J0 C+ S2 J0 M2 b, t

5

主题

61

回帖

156

积分

初级渣柚V2

积分
156
tmjl 发表于 2020-4-26 09:45:38 | 显示全部楼层 IP:–浙江–杭州 电信

回帖奖励 +1 渣金

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

4

主题

82

回帖

420

积分

中级渣柚V1

积分
420
专修火箭卫星 发表于 2020-4-26 10:19:36 | 显示全部楼层 IP:–山东–滨州 移动

回帖奖励 +1 渣金

GitHub上有python的的ddns 脚本,https://github.com/NewFuture/DDNS,
, P6 O* N: ~7 K/ m3 H* x1 {修改一下配置文件就可以上传ipv6地址了

4

主题

50

回帖

260

积分

中级渣柚V1

积分
260
taiquanfeng 发表于 2020-4-27 14:19:36 | 显示全部楼层 IP:–四川–成都 电信

回帖奖励 +1 渣金

路过,不懂

0

主题

19

回帖

42

积分

初级渣柚V1

积分
42
wangyefengol 发表于 2020-4-27 16:34:28 | 显示全部楼层 IP:–浙江–杭州 移动

回帖奖励 +1 渣金

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

1

主题

5

回帖

55

积分

初级渣柚V2

积分
55
569931951 发表于 2020-5-10 00:16:43 | 显示全部楼层 IP:–贵州–贵阳 移动

回帖奖励 +1 渣金

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

2

主题

43

回帖

182

积分

初级渣柚V2

积分
182
QQ
zibeline 发表于 2020-5-11 13:45:56 | 显示全部楼层 IP:–江苏–无锡–宜兴市 电信

回帖奖励 +1 渣金

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

9

主题

70

回帖

324

积分

中级渣柚V1

积分
324
 楼主| 边缘 发表于 2020-6-9 16:38:43 | 显示全部楼层 IP:–河南–南阳 电信
wangyefengol 发表于 2020-4-27 01:04! B( r4 Y: l$ L
可能是你路由器设置问题,或者群晖网络手动可以固定ipv6试试

! K- u4 \: s5 F0 @* y& R/ H" }的确是路由器问题,谢谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-8-27 08:59 , Processed in 0.114750 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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