过年回老家办了带宽,大家都知道家用带宽是没有固定ip的一般使用花生壳之类的动态解析域名; 但是花生壳现在不好用,我使用阿里云api动态解析的方案。
环境: 老家服务器(Linux主机) vps国外服务器 阿里云账号(含万网域名)
获取公网ip
Linux命令返回地址
curl ipinfo.io
nginx返回ip地址(vps
server { server_name attacker.club blog.attacker.club www.attacker.club; root /www/django/blog; location /getip { default_type application/json; return 200 '{"date":"$time_local","ip":"$remote_addr","type":"nginx json"}'; } } # http://attacker.club/getip
crontab 计划任务(家里主机)
crontab -e * */6 * * * curl -s attacker.club/getip # 每天6点请求一次vps记录,用于手动追踪
域名解析
指定ddns域名
ddns.attacker.club # a记录到任意地址上(后面通过阿里sdk自动更新地址);其他域名可cname到ddns主机这条记录
端口映射相关
天翼网关 (默认不行) 默认路由模式映射不生效;我自己也是一波三折,根据网友的方法将光猫改成桥接
模式,要回了pppoe拨号密码,在单独买的无线路由器上拨号;然而虽然成功拨号上网,获取的却是10.XX段私网地址;联系10000电信最终获取到外网ip
- 设置TPlink拨号上网
- 设置端口映射
tail /usr/local/nginx/logs/attacker.log|grep getip|tail -1 # vps查看nginx日志
ssh反向隧道映射(另类方式)
ssh -p55555 root@attacker.club -qngfNTR 666:127.0.0.1:22 # 家庭主机发起隧道 (建议用密钥免密码+计划任务) ssh -p666 root@127.0.0.1 # vps主机ssh本地666端口 连接到家中主机
ssh.sh #每天定时任务
#!/bin/bash ps aux|grep -v awk |awk '/ngfNTR/ {print $2}'|xargs kill -9 ssh -p55555 root@attacker.club -qngfNTR 666:127.0.0.1:22
阿里云 sdk
权限accesskeys
图1
图2
图3
python调用 API
dig一下查看解析是否成功
dig ddns.attacker.club @223.5.5.5 | grep IN
crontab -e #每天定时更新任务
0 */7 * * * cd /opt/aliyun_ddns && python3 DDNS.py
新增域名使用cname
测试
参考 https://blog.csdn.net/mgsky1/article/details/80466840
原文链接:https://blog.csdn.net/weixin_34301307/article/details/91935857
© 版权声明
声明📢本站内容均来自互联网,归原创作者所有,如有侵权必删除。
本站文章皆由CC-4.0协议发布,如无来源则为原创,转载请注明出处。
THE END