0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

动态域名服务 DDNS访问服务器的方法

鱼鹰谈单片机 来源:鱼鹰谈单片机 2023-06-13 12:36 次阅读

前面的笔记《如何像访问百度一样访问家里的服务器?(三)》已经通过公网 IP +桥接,完成了基本功能,已经可以通过公网 IP在全国各地访问家里的服务器了。

但是有个麻烦的地方是,虽然运营商给我的是公网 IP,但却是动态的,两三天就更换一次,因此我们需要一种服务,实时告诉我们家里宽带的当前 IP 是多少才能访问。

我们可以让家里的服务器主动发邮件的方式告诉我们当前的 IP,但是树莓派操作了一番,还挺麻烦的,没成功,因此我们可以借由第三方免费的 DDNS 服务实时更新 IP。这样我们可以直接通过固定域名访问家里的服务器,我们只要记住域名即可。

手机注册好之后,你就可以申请一个免费域名了。

36fdacb2-099b-11ee-962d-dac502259ad0.png

可以看到我已经新建了一个域名,如embedded_osprey.f3322.net,前面的embedded_osprey 主机名可以自己设定,后面的 .f3322.net是固定的,毕竟用的是别人的免费服务。

现在我们只是有个域名,但是并没有告诉它这个域名指向的地址是多少,因此我们需要一个客户端告诉公云的服务器我们现在的 IP。

371a835a-099b-11ee-962d-dac502259ad0.png

目前客户端只支持 window,当然Linux 的话不需要客户端,直接用命令即可(需安装 lynx,一般都有)。

373e894e-099b-11ee-962d-dac502259ad0.png

我使用的是树莓派,因此直接使用命令行形式即可。

本来只要执行一次命令即可上传 IP,但是因为我们的 IP 是动态的,因此我们需要定时执行这条命令,让他更新当前公网 IP。

有点类似定时发邮件告诉 公云 服务器自己的 IP,以便更新 IP。

这里我们可以使用 crontab 实现定时功能。

首先写一个非常简单的更新脚本 update_ddns.sh(这里根据需要填写公云网站的用户名和密码,自定义域名等信息,如上图显示):

#!/bin/bash
ipaddr=`lynx-mime_header-auth=username:password"http://members.3322.net/dyndns/update?system=dyndns&hostname=xxxx.f3322.net"| tail-n1|awk'{print$2}'`


date=`date"+%y-%m-%d%H:%M"`
echo$date$ipaddr

将脚本存放到合适位置,如/usr/local/bin/,并给脚本可执行权限:

sudo chmod +x /usr/local/bin/update_ddns.sh

现在可以尝试一下执行脚本,正常情况下,应该能输出当前公网 IP,可以对比一下 https://www.ip138.com/ 的 ip 查询结果 。

375749c0-099b-11ee-962d-dac502259ad0.png

正常命令执行结果如下:

376b6aea-099b-11ee-962d-dac502259ad0.png

确认脚本工作无误后,即可加入定时器中定时执行(可以使用 nano 编辑器,操作更简单),如图:

37832360-099b-11ee-962d-dac502259ad0.png

*/10 *  * * *   root    /usr/local/bin/update_ddns.sh

这里我们定时 10 分钟更新一次。

总结下来就是,树莓派定时执行登录公云服务器并更新域名 IP 的任务,这样公云的服务器就一直更新着我们最新的 IP 地址,当我们使用域名登录时,会查询到公云的服务器,从而就可以知道最新的 IP,最终登录我们家里的服务器树莓派了。

我们可以使用如下方式查询域名所所对应的 IP 是否正常:

37a1321a-099b-11ee-962d-dac502259ad0.png

当我们通过 nslookup 查询设定域名的 IP 地址,和家里的宽带IP是一致的话,证明我们的域名成功了。

此时我们可以在全国任何一个地方通过域名直接访问服务器了。类似访问百度一样,YYDS!!

大家可以尝试使用浏览器访问上面网页,看看是否能访问鱼鹰搭建的简单网页(大佬轻踩,不要攻击咱的服务器哈,不值得)

37c03156-099b-11ee-962d-dac502259ad0.png

注意事项

1、因为我们需要登录公云服务器更新我们的宽带 IP,因此不要轻易更换密码(因为更换了密码,树莓派无法登录公云,也就意味着无法更新 IP,当你使用域名登录时,就无法通过公云查询到 IP 了)

2、因为我们对公云服务器非常依赖,万一公云服务器出现问题,那我们自己的服务器可能就登录不了,因此需要有备选方案。

1)通过邮件之类的方式在 IP 更新后主动将最新 IP 发到我们的邮箱,这样我们可以在域名访问出现问题的情况下,仍然可以通过 IP 访问。

2)使用可以远程查看路由器 IP 的路由器。比如 tp-link 手机客户端,可以随时在手机查看当前的路由器 IP 地址,相当方便。

3、注意更换 SSH 常用登录端口 22 为其他端口号,防止被黑客暴力破解。更保险的方式是,关闭 ssh 密码登录方式,只能通过私钥方式登录,防止被扫描端口号,从而被暴力破解。可以参考连接:https://zhuanlan.zhihu.com/p/89872671

到此,个人服务器算是搭建好了,目前鱼鹰主要当云盘使用,后期可能会为其他联网设备做内网穿透服务,或者搭建调试日志服务器,亦或者个人网页等等,后期有时间也可能会继续更新这个系列,欢迎继续关注。

总之,个人服务器,YYDS!!!

编辑:黄飞

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    12

    文章

    8120

    浏览量

    82521
  • 树莓派
    +关注

    关注

    113

    文章

    1639

    浏览量

    104746
  • DDNS服务器
    +关注

    关注

    0

    文章

    2

    浏览量

    1243

原文标题:动态域名服务 DDNS,YYDS(四)

文章出处:【微信号:emOsprey,微信公众号:鱼鹰谈单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    服务器linux搭建ftp服务访问不了怎么解决?

    如果你在云服务器linux上搭建了FTP服务但无法访问,这可能是由于几种原因引起的。以下是一些常见问题和解决方法: 1、防火墙配置:确保防火墙允许FTP流量通过。FTP
    的头像 发表于 04-18 17:23 134次阅读

    服务器远程不上服务器怎么办?服务器无法远程的原因是什么?

    访问服务器 PS:检查端口是否能正常通信,可以通过命令tcping ip端口来确定,如果端口不通,检查防火墙远程端口策略有没有把现在 的远程端口加入策略之中,如果防火墙策略正常,那么检查服务器登录日志
    发表于 02-27 16:21

    【米尔-全志T113-i开发板试用】6、使用mDNS实现局域网域名访问

    访问设备呢? 可以的,要实现域名访问设备,有三种常见的方法: 在路由上开启DNS域名解析
    发表于 02-23 18:46

    linux服务器和windows服务器

    Linux服务器和Windows服务器是目前应用最广泛的两种服务器操作系统。两者各有优劣,也适用于不同的应用场景。本文将 对Linux服务器和Windows
    发表于 02-22 15:46

    如何通过WebDAV服务器访问NAS

    WebDAV是 HTTP 协议的扩展,可让用户管理存储在远程服务器上的文件,可以使用用户名和密码来进行访问,同时直接拷贝,编辑或删除共享空间内的文件。启用WebDAV 服务器后,可使用支持
    的头像 发表于 01-16 15:30 282次阅读
    如何通过WebDAV<b class='flag-5'>服务器</b><b class='flag-5'>访问</b>NAS

    dns的服务器地址设置为多少

    DNS(域名系统)是互联网的基础设施之一,用于将域名转换为IP地址,使用户可以访问网络资源。要设置DNS服务器地址,首先需要理解DNS的工作原理和不同类型的DNS
    的头像 发表于 01-15 11:11 660次阅读

    DHCP服务器的配置方法

    DHCP(动态主机配置协议)是一种用于自动分配IP地址和其他网络配置信息的协议。它可以使网络管理员更加方便地管理和配置大量的客户机。在本文中,我们将详细介绍如何配置DHCP服务器。 第一步:安装
    的头像 发表于 11-27 14:48 1047次阅读

    串口服务器如何使用OneNET平台MQTT服务器通讯教程 #MQTT #串口服务器 #OneNET平台

    串口服务器
    亿佰特物联网应用专家
    发布于 :2023年10月26日 15:47:36

    cdn加速国外服务器(国外云服务器

    cdn加速国外服务器:是指通过在全球分布的服务器上缓存国外服务器的内容,使用户能够快速访问国外服务器上的内容。CDN通过将内容分发到离用户最
    的头像 发表于 08-02 14:32 577次阅读

    服务器可以做什么?云服务器的主要功能

    服务器可以做什么? 云服务器是一种基于云计算技术的的高性能计算环境,通过互联网提供给用户使用。云服务器可以提供计算、存储、网络等资源,让用户可以通过互联网进行远程访问和管理。这种
    的头像 发表于 07-27 10:19 1495次阅读

    恒讯科技分析:什么是根服务器?有哪些特点?

    系统中,域名被分为不同级别,例如.com、.net、.org等就是顶级域名。根服务器就是管理这些顶级域名服务器。 那么根
    的头像 发表于 07-24 17:40 1270次阅读

    ip地址是从哪来的呢 DNS技术详解

    动态域名解析需要专用的域名服务器( DNS server )运行域名解析服务器程序,提供从域名到 IP 地址的映射关系,负责接收客户端( D
    发表于 07-24 12:55 2442次阅读
    ip地址是从哪来的呢 DNS技术详解

    什么是服务器指令?

    服务器
    YS YYDS
    发布于 :2023年06月23日 01:02:04

    为什么Xshell连接不上服务器

      Xshell为什么连接不上服务器?Xshell可在Windows桌面下访问不同系统下的远程终端服务器,并且进行操作控制。新手用户有时在用Xshell远程连接Linux服务器时,可能
    的头像 发表于 06-09 13:47 3473次阅读
    为什么Xshell连接不上<b class='flag-5'>服务器</b>?

    什么是DNS服务器,有什么作用?

    DNS服务器(DomainNameSystem)是互联网的一项服务,DNS服务器作为域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问
    的头像 发表于 05-23 13:46 759次阅读