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

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

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

9

主题

70

回帖

324

积分

中级渣柚V1

积分
324
边缘 发表于 2020-4-26 02:47:48 | 显示全部楼层 |阅读模式 IP:–河南–南阳 电信
从4月1日来到矿渣后,就仿佛打开了新世界,经常折腾到深夜,然后第二天伴随着黑眼圈和唠叨出门...2 v, a. X3 j5 B$ ]
明天,对了就是明天 又少不了一顿臭骂...
/ y! J* }* _$ I$ V  {! e1 @) e- J& f  F. U, Y7 M
百度搜到一大佬在张大妈上发布的aliddns教程,按照他的照抄结果脚本把内网ipv6地址传上去了,4 k: R# f/ ]. k4 J* `/ {9 \
' E* O/ Y- y. |( K6 b
) R1 o/ C1 [0 d. p. |2 G- w
仔细一看他的教程中 ipv6地址栏 第一行地址就是外网地址,而我的是内网地址,
( a# i) ~3 W, W( G5 z瞎子过河改了第20行 print $2 不行,33行tail -n4也不行,. H* U& @  }/ O/ T
菜鸟看不懂代码,也不知道去哪问,希望能有路过的大神能指点下# E2 I& y0 I& g
7 y' c8 S& ~& O& X
3 h, D3 r* F; W5 q
( c7 C/ @3 i) }6 {# f
ds120j.png # r4 t, s9 U+ D
, p$ s9 @8 g' U  ]4 x9 c
  1. aliddnsipv6_ak="aliddns_id"9 ]* e' k* _( }) S7 P0 F7 M
  2. aliddnsipv6_sk="password_info"
    # |1 [" l' x' \; [5 H/ F4 e
  3. aliddnsipv6_name1='nas'
    " H6 G2 n. {& n
  4. aliddnsipv6_domain='mydomain.cn'
    ' t: T: D5 Y2 s
  5. aliddnsipv6_ttl="600"0 [. f, V0 e; P& d5 W2 c/ y5 {0 {
  6. 5 D* p, J5 }; i
  7. if [ "$aliddnsipv6_name1" = "@" ]
    5 N& E- l) V9 y5 X, q
  8. then
    1 B6 S( r3 W- J. V$ B, h8 U
  9.   aliddnsipv6_name=$aliddnsipv6_domain* Q% U% a1 P9 t
  10. else
    ) `( u5 s" [' x( |" G5 Z
  11.   aliddnsipv6_name=$aliddnsipv6_name1.$aliddnsipv6_domain
    8 A( K& X  B/ u  c
  12. fi
    4 k" N# ?7 i, h: b; i$ f; S( z
  13. ' W7 @# H/ r: A* K
  14. now=`date`  y  P  _: [  v1 d3 K4 t
  15. 7 o8 N# @3 \& T" [6 N6 D/ R
  16. die () {$ U9 v# b, Y4 t+ R, f8 K
  17.     echo $1: `' L8 F, ^, i3 y& R: `
  18. }
    7 |4 V- E8 \$ ]1 B
  19. % N' I, S$ d/ |3 w1 b! ~0 Z
  20. ipv6s=`ip addr show eth0 | grep "inet6.*global" | awk '{print $1}' | awk -F"/" '{print $1}'` || die "$ipv6"
    6 P2 \. j$ X8 ^/ z

  21. + U! A( W* N6 I/ E2 W7 i& J
  22. for ipv6 in $ipv6s5 t1 Y/ ?! ^2 w( [2 j% {7 v+ }& J
  23. do
    6 |8 U4 s9 s6 Q# I
  24.   #ipv6 = $ipv6
    4 F) n' B( t( R# J
  25.   break
    . M" P* `& ^4 Q9 Q6 F/ q
  26. done  x, c" X1 U' |4 W6 Q, S8 m7 |: ~
  27. , C4 _6 g+ [0 e, t( H; y/ p
  28. echo $ipv6
    : E( ]! m/ A" I: i; a$ ?6 ?6 Y
  29. 6 a8 k1 Z: f# Z, i0 ?8 j
  30. current_ipv6=`nslookup -query=AAAA $aliddnsipv6_name 2>&1`
    ( C! P! @- |: |$ v) L, U7 A
  31. #echo $current_ipv6" q0 ^6 h; K, j% Z2 W* C
  32. $ O. d; I0 P4 ~' k
  33. current_ipv6=`echo "$current_ipv6" | grep 'Address: ' | tail -n1 | awk '{print $NF}'`0 h8 {& g# O" \6 O& {% U$ {) Y+ J8 _6 h
  34. echo $current_ipv6: k, V2 c8 U! l9 A) c2 y) B' S

  35. 9 h$ I4 o0 E9 A3 W/ p) R
  36. if [ "$?" -eq "0" ]
    / M1 V. F# W9 w
  37. then! C* z$ K7 a/ R% U, k  j
  38.     current_ipv6=`echo "$current_ipv6" | grep 'Address: ' | tail -n1 | awk '{print $NF}'`, r+ q0 {& I9 d+ }2 ~3 q$ H
  39.     echo $current_ipv6
    . R0 T( K+ }; ?* }& D6 I

  40. * W" Z" w6 \$ O( z! c6 g
  41.     if [ "$ipv6" = "$current_ipv6" ]
    $ }6 k0 v( h' D0 [9 R- j
  42.     then  Y0 h/ ?* a3 D( |. A9 L+ d
  43.         echo "skipping"8 w3 O( Z8 O) N$ }- Q. ]* ?1 T; s
  44.     fi
    . m$ A' b3 z5 r+ i( K" ~8 W: p
  45. # fix when A record removed by manual dns is always update error
    2 T  _3 d' J% U" G! X! o& h
  46. else
    + {, ~5 Y8 Y" c
  47.     unset aliddnsipv6_record_id% Y8 ?9 _0 b( y9 N: r* w: W0 ]
  48. fi
    & S0 r5 v, o- L% v6 A7 b+ A

  49. 9 @+ x# o# B4 e8 W
  50. 9 a- Y+ d% m  l6 v1 @
  51. timestamp=`date -u "+%Y-%m-%dT%H%%3A%M%%3A%SZ"`; L8 J! q$ C' S( ^1 u

  52.   p4 O* o- e5 E
  53. % Q# @' F5 @( J
  54. urlencode() {
    4 Z# M8 K5 |3 }: U
  55.     # urlencode <string>
    ) z* l& ?  c: m# G
  56.     out=""
      S* ]' f. t, t0 A  E+ B
  57.     while read -n1 c6 c0 R7 a  H3 q/ F
  58.     do
    6 o1 e7 W  g% p! \( F1 a- l5 c0 c* `
  59.         case $c in% C( E! E+ a9 G, P
  60.             [a-zA-Z0-9._-]) out="$out$c" ;;# n4 x) A, q5 k
  61.             *) out="$out`printf '%%%02X' "'$c"`" ;;
    7 i) p2 {8 _! w& ?/ j
  62.         esac
    ! I- x) N/ G2 X7 R
  63.     done
    # `: n8 i) ]* f5 N/ m- r
  64.     echo -n $out
    ( V3 y1 ]! c  F- Z8 H
  65. }
    5 G( d  j6 n9 R' R9 r
  66. 7 f* @3 ^2 Y4 k5 O( k  ~( s$ N; ~! i
  67. enc() {8 n  Y; z: R, c/ ~
  68.     echo -n "$1" | urlencode( W, n0 x+ p/ t8 m- ~9 n9 y: F" z
  69. }& |0 d) D2 z8 K

  70. 2 q6 T( B: x% n3 H
  71. send_request() {' G  v; x+ {0 _' n1 m* p
  72.     local args="AccessKeyId=$aliddnsipv6_ak&Action=$1&Format=json&$2&Version=2015-01-09"% |% C9 x5 N) [6 r6 D4 G% e
  73.     local hash=$(echo -n "GET&%2F&$(enc "$args")" | openssl dgst -sha1 -hmac "$aliddnsipv6_sk&" -binary | openssl base64)
    & B! a/ a6 u; w: L* @/ W" R) N7 z
  74.     curl -s "http://alidns.aliyuncs.com/?$args&Signature=$(enc "$hash")"/ W# `& W# Z+ q6 O/ ]0 h
  75. }7 G; K5 P! x2 _4 c, p% k

  76. ( ~0 ^! V1 o' T% `0 X/ c7 R5 c
  77. get_recordid() {, F, P" v2 U  l* l$ P( O
  78.     grep -Eo '"RecordId":"[0-9]+"' | cut -d':' -f2 | tr -d '"'; C; V4 r2 n( Q
  79. }. F" e( C8 T2 V/ j; h+ L! o

  80. $ L5 R9 C) K7 F: g; d
  81. query_recordid() {
    5 p8 U9 A0 Q1 o0 h/ w+ \
  82.     send_request "DescribeSubDomainRecords" "SignatureMethod=HMAC-SHA1&SignatureNonce=$timestamp&SignatureVersion=1.0&SubDomain=$aliddnsipv6_name&Timestamp=$timestamp&Type=AAAA"% H- ]/ U8 S/ d- B7 i5 k, h
  83. }
    ' R1 f3 w* d5 z" l1 V$ B$ G

  84. ( u, |! h: U: c! ]
  85. update_record() {
    1 ]1 x/ `1 E# Z  C: y; C6 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)"0 v9 o: @3 c5 _- l2 v' e  ^5 R
  87. }2 w; Y- p4 M( o0 N7 m! P. ^

  88. % T" N: q- Q2 m6 O" v* [. c
  89. add_record() {
    0 R$ T. o+ S/ Z9 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)"
    : Z  d8 u; x, d/ n3 s' D! D
  91. }6 _5 A: p4 M( Y0 y' @2 x8 H

  92. 1 |' T$ q" ?! R% z# d2 i% F; Q( }
  93. #add support */%2A and @/%40 record
    ) C- u* h; k2 T# E& N; D9 a
  94. # y- p: M( V' l% K5 l) e

  95. # M+ G! i5 L+ F- o, g2 M
  96. if [ "$aliddnsipv6_record_id" = "" ]
    + Q3 d) e. b% i7 A8 S9 }* A0 T9 s
  97. then
    ) t; u( G! F+ n. q& M
  98.     aliddnsipv6_record_id=`query_recordid | get_recordid`* l& h7 ?8 `8 k8 {
  99.     #echo '-----------------' $aliddnsipv6_record_id+ g9 R' u, @+ X- k
  100. fi
    0 j* F! U6 F; x" I- t3 m2 R0 v, I& w
  101. if [ "$aliddnsipv6_record_id" = "" ]4 f$ f4 |+ f! U
  102. then
    ' Z: a4 B  [: w. l1 Z7 I, x
  103.     aliddnsipv6_record_id=`add_record | get_recordid`
    " |% u9 C  [2 ]. V8 x& j& T& b1 g
  104.     echo "added record $aliddnsipv6_record_id"+ V) Y9 z: q' W) P; c+ v: \( W
  105. else3 v5 k2 f2 Q; ~* t2 p
  106.     update_record $aliddnsipv6_record_id
    0 K* o6 S, p) {3 z: K
  107.     echo "updated record $aliddnsipv6_record_id"9 P' E, H  h  V9 r- y, o
  108. fi
    . g3 W5 i2 }( U% a& _2 Z

  109.   [8 A+ l4 y: C: ?
复制代码

& F$ P: ?3 N& ]* `( N8 C" G5 \8 x( ]) Y# `8 J
7 U0 A& }7 T& I( R1 j' B

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,
5 \" `; u+ u& Y" [0 y修改一下配置文件就可以上传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
. v) o: ]- @/ J; o" n5 y- D可能是你路由器设置问题,或者群晖网络手动可以固定ipv6试试

* a( r3 M  l& S5 \# A的确是路由器问题,谢谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-10-22 22:13 , Processed in 0.064162 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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