精华内容
下载资源
问答
  • 校园网DDNS

    2020-07-23 12:22:31
    校园DDNS 在校园内实现局域网域名访问 在大学校园里一般在同一网段且能互相访问,基于这个原理,我用阿里云域名和DNS+ tp路由器实现使用域名访问 一、准备 域名 我适用了阿里云的域名 。理由便宜(用户首年...

    在校园网内实现局域网域名访问

    在大学校园里一般在同一网段且能互相访问,基于这个原理,我用阿里云域名和DNS+ tp路由器实现使用域名访问

    一、准备

    域名

    • 我适用了阿里云的域名 。理由便宜(新用户首年1元起),api方便
    • 大家也可用其他的。据我了解cloudflare也比较好用但是api没写过

    获取ip地址

    • 我本人用的是TP的路由器,使用python爬虫的方式爬取路由器的ip
    • 如果大家使用其他的路由器大同小异都可爬取IP地址
    • 如果是直接接入校园网更简单,随便一搜就是方法。(注意不是192.168.x.x网段的)

    定时解析

    • 使用域名提供商的api+python+linux 的定时运行任务实现定时解析
    • 关于服务器设备选择,都可以通用各种平台。有资本可以跑一个PC机,低成本实现就在树莓派上跑。
    • linux的定时任务 使用crontab,方便简单

    二、 域名解析

    1.购买域名阿里云

    注意全程要实名认证的前提下

    2.RAM鉴权

    所谓RAM鉴权就是给api接口访问的权限,这是阿里的一种安全措施

    2.1建立用户

    在控制台页面鼠标在头像处悬停有访问控制项,进入
    在这里插入图片描述
    用户创建用户,之后选中控制台访问编程访问
    在这里插入图片描述
    登录名称显示名称自定义。会有短信的二级验证。之后会生成AccessKey ID和AccessKey Secret,记得保存,之后会用。

    2.2 授权管理。在用户找到你的账户进行权限管理。

    在这里插入图片描述

    更多授权方式参考api文档-RAM鉴权
    本次授权DNS相关操作,权限策略名称AliyunDNSFullAccess添加权限即可,至此RAM鉴权完成。

    3.api准备。

    在2.1步骤中我们得到了AccessKey ID和AccessKey Secret。然后查询api文档-API 预览。你可以手动添加一个域名之后更新记录只,或者更据api文档通过接口添加域名,显然前者要更简单一点。下面我们来说api接口,在阿里给的调试工具里可以提前实验。

    在这里插入图片描述
    参数解释都有,自行阅读。下面有实例代码,复制即可。但是RecordId(解析记录的ID)没有给出我们要通过另一个api获取——获取子域名解析记录
    在这里插入图片描述
    同上即可获取RecordId。

    4.SDK准备。

    阿里云的SDK市场选择安装所需SDK。详细信息阅读 API文档-SDK
    目前我们使用核心库和DNS库。使用 python3 -m pip install aliyun-python-sdk-corepython3 -m pip install aliyun-python-sdk-alidns安装,注意是python3。至此SDK安装完成。

    5.需要解析的IP准备。

    我使用了tp模拟登录方式,大家可以使用其他的。

    5.1 stok获取
    def loginInRouter():
        """ 登陆路由器或者对应的stok
        Args:
             None
        Returns:
            toke:路由器返回的stok
                -1:为获取失败
        """   
        url = "http://192.168.1.1/"
        request_body = '{"method":"do","login":{"password":"********"}}'
        header = {"Content-Type": "application/json"}
        res = requests.post(url, data=request_body, headers=header)
        res = res.json()
        code, stok = int(res["error_code"]), res["stok"]
        if(code == 0):
            info("get stok and stok:{}".format(stok))
            return stok
        else:
            error("获取stok失败")
            return -1
    

    对于password可以在浏览器里查看,他不是路由的输入密码,而是路由器根据的登陆密码转换过来的。
    在这里插入图片描述
    路由器主页打开浏览器network。192.168.1.1的POST请求的返回时有password。
    此时stok获取了,在根据stok获取IP地址,注意每次登录的stok不相同所以要每次都要获取一边stok,但是password不变。

    5.2获取ip
    def getRouterIp(stok):
        """ 获取路由器当前的获取的内网ip
        Args:
            stok:登陆时获取到的stok
        Returns:
            None
        """  
        if(stok != -1):
            url = "http://192.168.1.1/stok={}/ds".format(stok)
            request_body = '''
                {
                "network": {
                    "name": "wan_status"
                },
                "cloud_config": {
                    "name": [
                        "new_firmware",
                        "device_status",
                        "bind"
                    ]
                },
                "wireless": {
                    "name": [
                        "wlan_wds_2g",
                        "wlan_wds_5g"
                    ]
                },
                "method": "get"
                }            
            '''
            header = {"Content-Type": "application/json"}
            res = requests.post(url, data=request_body, headers=header)
            res = res.json()    
            return res['network']['wan_status']['ipaddr']
        else:
            error("获取ip失败")
            return -1
    

    此时返回的值便是ip地址。

    6.更新记录值。
    6.1RecordId获取。
    def GetRecordId():
        accessKeyId='your  accessKeyId'
        accessSecret='your accessSecret '
        client = AcsClient(accessKeyId, accessSecret, 'cn-hangzhou')
        request = DescribeSubDomainRecordsRequest()
        request.set_accept_format('json')
        request.set_SubDomain("your domain")
        response = client.do_action_with_exception(request)
        RecordId=json.loads(str(response, encoding='utf-8'))['DomainRecords']['Record'][0]['RecordId']
        # print(RecordId)
        return RecordId
    

    这段代码是阿里云给的实例代码。

    6.1 设置记录值。
    def setDns(ip="8.8.8.8",RecordId='4512578625647894589'):
    
        accessKeyId='your  accessKeyId'
        accessSecret='your accessSecret '
        client = AcsClient(accessKeyId,accessSecret, 'cn-hangzhou')
        request = UpdateDomainRecordRequest()
        request.set_accept_format('json')
        print(RecordId)
        request.set_RecordId(RecordId)
        request.set_RR("RR")
        request.set_Type("A")
        # print(ip)
        request.set_Value(ip)
    
        response = client.do_action_with_exception(request)
    
        # print(response)
        return True
    

    此时就算基本完成。然后处理一下代码之间的逻辑关系,有兴趣可以写写log方便调试。值得注意的是,如果更新记录值没有改变,会返回400的错误HTTP Status: 400 Error:DomainRecordDuplicate The DNS record already exists. RequestID: 1E20C9A1-BFDF-4E22-ACC4-2CA5CC690CE2。所以有必要写写如果没有变化不提交的步骤。

    7.定时运行。

    我使用了crontab方法,简单易用。
    在这里插入图片描述
    这里有一个工具——crontab时间计算工具,供大家参考。

    8.端口映射。

    此时设置的域名是路由器一级或者网关一级的,并不能访问到具体设备,要进行端口映射。在路由器里找到虚拟服务器。
    在这里插入图片描述
    外部端口自定义,建议选择未被占用的,典型的80 443 1080 3389 22 23 8080就不要用了。

    常见端口 功能
    80 http服务
    443 https服务
    22 SSH
    1080 SOCK5
    3389 windows远程桌面
    21 FTP
    110 POP3 Post Office Protocol(E-mail)

    端口映射前要绑定IP和MAC地址,以防DHCP变化设备IP造成无法访问。

    完成

    到这里你可以在校园网内自由访问,最爽的是windows的Remote Desktop各平台都有软件,想想能在pad或者手机几乎零延时远程控制。或者任意地方访问SSH不爽吗???

    其他

    1.西安电子科技大学不做修改可直接应用
    2.欢迎大家访问我的博客
    3.完整代码下载

    展开全文
  • 字符串"default"(或者无此项): 系统访问外默认 IP 字符串"public": 使用公网 ip(使用公网 API 查询,url 的简化模式) 字符串"interface": 使用指定网卡 ip(如:"interface:eno1") 字符串"url:xxx": 打开 URL xxx(如:...
  • K3 官改新手小白配置阿里DDNS 超级详细 写的比较仓促,不对之处请指正, 这个是写给小白看的,大神勿喷 首先介绍一下什么是DDNS DDNS(Dynamic Domain Name Server)是动态域名服务的缩写。 DDNS是将用户的动态IP...

    K3 官改新手小白配置阿里DDNS 超级详细

    写的比较仓促,不对之处请指正, 这个是写给小白看的,大神勿喷

    首先介绍一下什么是DDNS
    DDNS(Dynamic Domain Name Server)是动态域名服务的缩写。
    DDNS是将用户的动态IP地址映射到一个固定的域名解析服务上,用户每次连接网络的时候客户端程序就会通过信息传递把该主机的动态IP地址传送给位于服务商主机上的服务器程序,服务器程序负责提供DNS服务并实现动态域名解析。
    市面上路由器有很多,可以刷梅林的有华硕,网件,斐讯K3
    下面我以斐讯K3为例介绍

    第一步使用K3进行拨号上网,我使用的是电信网络,电信的工作人员上门安装的时候使用的是光猫进行拨号的,此时K3 对于光猫来说只是下级路由,我们需要更改一下,直接使用K3进行拨号(已经是K3拨号的朋友略过此步)
    使用K3 进行拨号的朋友首先需要知道自家的宽带拨号账户和密码,不知道密码的直接打客服电话,
    操作如下: 登录路由器 查看K3 wang口地址信息,查看网关IP,已刷K3 官改的朋友可参考下图

    在这里插入图片描述
    在这里插入图片描述浏览器直接输入光猫的网关IP地址 如果光猫没改过 一般为192.168.1.1,我修改过所以为192.168.28.1

    在这里插入图片描述登录后我们输入电信的超级管理员密码。Telecomadmin
    超级管理员密码需要问安装的师傅要 也可以网上找教程破解
    也可以用路由器后面铭牌的用户名和密码登录。
    登录进去如下
    在这里插入图片描述点击网络按钮,下拉选到Internet的Vlan
    在这里插入图片描述
    在这里插入图片描述将模式设置成bridge(桥接模式)

    在这里插入图片描述
    至此光猫设置完毕
    我们进K3设置上网模式为宽带拨号(PPOE)
    在这里插入图片描述填入宽带账户和密码,确定拨号成功

    在这里插入图片描述K3成功拨号后,我们要查看wang 口的IP地址是否为公网IP地址,
    (注: 使用ddns 的前提条件是 你家wan口是公网IP地址)

    1. 登录K3,查看系统状态
      在这里插入图片描述可以查看到wang 口IP地址,拿纸记录下来
    2. 2
      在百度中直接输入IP,然后点击搜索,百度会把目前的网络IP查询出来

    在这里插入图片描述查询出来的WAN IP和百度IP查询不相同,则说明网络目前没有直接连接到公网,而是电信等运营商把网络进行了NAT转发,无法设置DDNS 进行解析;(注:公网IP需要联系供应商申请,电信的朋友直接10000号给客服,就说家里需要远程访问,很好申请,移动联通据说申请特别困难,看各自本事)

    如果这两个IP是一致的,则说明所用网络是直接连接到公网的。那么我们就可以继续下一步操作
    登录 阿里云

    阿里云地址
    https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=9rjrdezq
    推荐使用谷歌浏览器完成如下操作

    在这里插入图片描述在这里插入图片描述注册完毕以后

    在这里插入图片描述在这里插入图片描述
    一些列介绍动画,点击完毕
    在这里插入图片描述可以使用以下进行实名认证
    在这里插入图片描述
    我选择支付宝,一系列操作后,会出最终认证结果
    在这里插入图片描述填写完所在地区和详细地址点击确认即可
    打开阿里产品目录
    在这里插入图片描述首先我们需要一个域名,找到阿里域名购买入口
    在这里插入图片描述点击进入域名操作页面.点击域名注册
    在这里插入图片描述点击域名注册,直接跳转到新的域名注册和购买页面
    个人建议.top 域名, 性价比超高,第一年9元,续费26
    在这里插入图片描述我们介绍一下阿里云的.top域名注册,
    注册新域名必须先查询

    在这里插入图片描述
    查询结果 查看可购入的域名
    在这里插入图片描述点击加入清单,这时候需要眼睛睁大点 别选错了都是钱 ,我们只要域名,其他的都不需要
    在这里插入图片描述选好域名,立即结算
    在这里插入图片描述立即购买,付完钱,就可以了
    购买完成后,我们还需要对域名进行实名认证,不然只能使用三天,就无法解析了
    域名实名认证很简单,就不介绍了 ,告诉大家查看自己已经购入域名的方法

    在这里插入图片描述点击进去就可以看到了 我们已经购入的域名
    在这里插入图片描述
    我们需要吧我们购入的域名加入到云解析里面
    直接点击后面的解析(阿里的云解析VIP服务也是需要付费的,不贵)

    在这里插入图片描述记录值,填路由器wang 口IP,完成填写点击确定
    我们可以试验一下 填写是否正确, K3 开启远程访问,端口号可根据需要修改

    浏览器直接输入域名加路由器远程端口访问,看能否进入路由器web 管理界面
    也可以 windows+R 输入cmd

    然后按照如下格式填写
    Ping www.baidu.com -t

    在这里插入图片描述
    如果可以解析出来IP地址 配置没有问题
    接下来
    我们需要用到阿里的 accesskeys

    在这里插入图片描述点击继续使用

    在这里插入图片描述
    如果还没有,点击创建

    在这里插入图片描述
    为了安全 阿里会要求输入验证码

    在这里插入图片描述
    在这里插入图片描述
    创建成功后 点击保存AK信息
    自动下载,打开后

    在这里插入图片描述
    此时我们需要进到我们K3 管理界面

    在这里插入图片描述
    填入 刚刚下载下来的文件 ID和key
    主域名 子域名 按照我的格式填写,填写完毕 大功告成
    (注意 阿里云的accesskeys ID可key 非常重要 不要轻易泄露)

    你以后就可以使用域名访问路由器了,不管你的IP怎么变
    VPN FTP web 都可以透出来 使用这个域名访问

    展开全文
  • ddns-go 自动获得你的公网 IPv4 或 IPv6 地址,并解析到对应的域名服务。 ddns-go 特性 系统中使用 Docker中使用 使用IPv6 Webhook 界面 开发&自行编译 特性 支持Mac、Windows、Linux系统,支持ARM...
  • 访问群晖设置ddns教程

    千次阅读 2020-02-11 22:09:17
    里面自带ddns功能,但是最近不懂是硬件问题还是固件问题,测网速是没问题的,就是打游戏的时候会忽然卡一下,跳延迟,忍无可忍,最后用了gen10上面装的openwrt软路由,网络卡的问题解决了,但是问题又来了,如何...

    本来之前用的是华硕的路由器,里面自带ddns功能,但是最近不懂是硬件问题还是固件问题,测网速是没问题的,就是打游戏的时候会忽然卡一下,跳延迟,忍无可忍,最后用了gen10上面装的openwrt软路由,网络卡的问题解决了,但是新问题又来了,如何实现外网访问群晖,虽然可以使用白群上面的quick连接,但是老记不住那个链接……
    openwrt上面虽然有个动态dns功能,不懂是设置问题还是什么,过了周期更新的时候,网络就不行了。
    最近发现这个设置可以解决问题。
    1、cloudns.net上面注册一个帐号,可以设置中文,DNS域,增加新的
    在这里插入图片描述
    在这里插入图片描述
    域名填写直接申请的,假设我是在腾讯云申请了 abc.com, 你就填写这个。
    2、你就会在刚才的界面看到直接添加的域名,点击abc.com,弹出如下窗口,添加新记录
    在这里插入图片描述
    在这里插入图片描述
    点击上面图中的active动态网址,激活并记录下链接在这里插入图片描述
    去腾讯云把域名的dns信息改成如下:
    在这里插入图片描述
    群晖计划任务-新增用户自定义脚本。运行时间为10分钟,
    脚本里写入
    /usr/bin/python 下载的python脚本文件.py

    路由器做好端口映射5000,5001,最后访问http://www.abc.com:5000
    https://www.abc.com:5001就可以成功外网访问群晖了

    2020年2月20日更新:
    上面的方法好一阵子不行了,因为腾讯云不给修改自己的dns服务器,我发现openwrt里面有一个动态dnspod插件,没有的可以装,去dnspod.cn里面安全设置里面申请一个token,并记录下,在openwrt插件里面填写,就可以实现ddns的功能。

    展开全文
  • DDNS(dynamic domain name system)是指动态域名系统,简称动态DNS DNS DNS非常简单 DNS服务器就是做域名和ip地址的映射的服务器。 但这个ip不能改变,必须是静态ip。 如果ip地址改变了,需要更新DNS数据库相应的ip...

    DDNS(dynamic domain name system)是指动态域名系统,简称动态DNS

    DNS

    DNS非常简单
    DNS服务器就是做域名和ip地址的映射的服务器。

    但这个ip不能改变,必须是静态ip。
    如果ip地址改变了,需要更新DNS数据库相应的ip地址。
    但是,DNS使用新ip地址更新数据库可能需要24小时,这导致你更换ip后,你的业务可能会暂停24小时,直到DNS更新。

    DDNS

    我们家庭网络通常用动态IP

    动态IP从DHCP服务器获得的ip地址,因此ip地址会定期更改
    这样,就无法通过DNS访问家中设备的服务了。

    而DDNS是一种允许我们访问家中设备的服务,例如家里的计算机、路由器或安全摄像头。
    你可以在世界任何地方访问他们,即使你的ip地址改变了。

    动态DNS主要用于家庭,因为家庭中使用的互联网服务通常使用的动态IP而不是静态IP。

    DDNS能及时记录你的ip地址改变情况,使你的ip地址发生更改的情况下,仍然可以访问你的家庭计算机。

    它允许你自定义主机名(域名),然后将主机名链接到你的家庭计算机(注意不是ip),当ip发生改变,DDNS可以通过家庭计算机发来的信息,自动更新新的ip地址

    举个栗子,链接远程桌面,在有DDNS的情况下,只需要在客户端输入自定义主机名(域名),即可找到动态的ip地址,然后链接上远程桌面

    通过绑定了DDNS的域名,DDNS将始终确保正确的ip地址映射到你的自定义主机名。

    具体操作,参考视频 群辉DDNS与端口转发设置


    参考:

    展开全文
  • DDNS解析

    2018-10-24 10:08:03
    密码:申请用户时对应的密码asdfghjkl,给路由器的外接入IP地址(58.251.48.8)创建动态域名解析域名(xl1.f3322.org),如图3-1.1;   图3-1.1 3.2设置路由器端口映射,以TP-LINK的路由器为例; Step1:设置...
  • DDNS简介

    2007-08-20 06:10:00
    DDNS(Dynamic domain name service)即动态域名服务,就是实现固定域名到动态IP地址之间的解析。用户每次上网得到的IP地址之后,都要向DNS申请更新该域名解析数据库;在用户在线期间,Internet上的其它人要访问这...
  • 腾讯域名做DDNS

    2018-12-19 14:37:44
    这个包就是获取自家公网IP然后修改腾讯域名的解析记录指向到的公网IP 可以自己打包,提供了完整的java代码。或者用已经打好的包: java -jar xxx.jar 需要做DDNS域名 [secretId] [secretKey] 后面三个参数最好都要...
  • (1) 假设 VMWare 配置中系统原有网卡 ens33(使用 bridge 方式连接)(2) 添加的网卡, 使用 bridge 连接方式然后以这个网卡的名字创建配置文件,假设网卡的名字是 ens34(具体看个人情况)ens34 的配置文件根据 ens33 ...
  • Linux下DDNS客户端的使用

    千次阅读 2014-01-16 16:51:45
    对于使用动态IP地址的用户,在每次上网得到的IP地址后,安装在主机上的动态域名软件就会将该IP地址发送到由DDNS服务商提供的动态域名解析服务器,并更新域名解析数据库。当Internet上的其他用户需要访
  • 无论是哪种方式,只要运行一次 sakuraddns.php,就会将指定域名的指定 A 记录对应记录值更新为当前设备的最新外 IP 地址。 Access Key Id 和 Access Key Secret 可以在阿里云官网申请得到。 将对应配置修改好后,...
  • aliyun-ddns-shell-源码

    2021-04-13 21:21:01
    当你手里面有一个闲置的域名,有一个漂浮不定的外ip,你又想在外ip变更后自动解析到域名上,此情此景此脚本可能会帮上你。 更新日志 2020-09-29 支持IPV6解析(支持设置解析记录类型:A、NS、MX、TXT、CNAME、...
  • RouterOS之DDNS(动态域名)

    万次阅读 2017-03-28 17:03:23
    新版ROS的IP菜单下有个Cloud,其实就是动态域名的,将此功能开启后,过一会儿Public Address和DNS Name中就会显示出内容,前者为你的外IP地址,后者为自动创建域名,以后使用这个域名访问就行了。 如果要使用...
  • 荒野无灯路由器固件配置DDNS的过程

    千次阅读 2018-07-28 21:21:00
    为了方便以后远程管理路由器就打算配置下DDNS服务,在网络上检索了一下,发现都是些过时的教程(比如DNSPod的API的鉴权方式早就升级为Token了,帖子里面的还是早期的帐号密码),自己研究了一下,发现还是有一些需要...
  • CentOS 7中DDNS服务器配置与应用

    千次阅读 多人点赞 2021-02-25 21:01:16
    2.添加的网卡,使用bridge连接方式 添加网卡的方法 添加后,可以看到的网卡: #ifconfig 网卡改成桥接模式 然后以这个网卡的名字创建配置文件,假设网卡的名字是ens38(具体看个人情况)ens38的配置文件根据...
  • 由于服务器的外是动态拨号,每次获取的外IP都不同。手头上刚好有阿里云的域名。为此,想通过编写一个Shell脚本,定期通过互联网服务获取当前机器所在网络的IP地址,并将的IP地址通过阿里云提供的API,更新到...
  • 本文讲解ROS借助阿里云的 DNS API 来实现域名与动态 IP 的绑定,用来达到外访问内网设备的需求。 一、给域名添加A记录解析 1、点击登录阿里云域名控制台 2、给域名添加一个A记录解析,记录值可以随意...
  • 文章目录 1. 按 2. 生成AccessKey 3. 获取`aliyunsdkalidns`库 4. 查询RecordId 5. 修改解析记录 6. 参考 1.... 参考 使用python实现阿里云动态域名解析DDNS 利用Python+阿里云实现DDNS(动态域名解析)
  • 在该界面中支持的指令很多,我们可以通过help命令来查看,命令包括bridge(网桥命令),ddns(动态域名解析命令),ip(设置IP信息),lan(设置局域网参数),nat(设置NAT信息),passwd(修改帐户密码),reboot...
  • 在该界面中支持的指令很多,我们可以通过help命令来查看,命令包括bridge(网桥命令),ddns(动态域名解析命令),ip(设置IP信息),lan(设置局域网参数),nat(设置NAT信息),passwd(修改帐户密码),reboot...
  • 在该界面中支持的指令很多,我们可以通过help命令来查看,命令包括bridge(网桥命令),ddns(动态域名解析命令),ip(设置IP信息),lan(设置局域网参数),nat(设置NAT信息),passwd(修改帐户密码),reboot...
  • 求添加功能

    2020-12-27 10:33:24
    AliDDNS 阿里云DDNS ,远程访问,这个功能是给那些路由器PPPOE连接且为外IP的玩家用的,web外部访问端口添加的。 求大佬添加下,谢了,如果你有赞助的话,我想赞助您一些维护...
  • 2021自编译NEWIFI3最新openwrt固件

    千次阅读 2020-05-07 17:04:45
    DDNS Adbyby $$ℝ Adblock 网络唤醒 KMS服务器 IP/MAC绑定 Turbo ACC 网络加速 注意事项(重要) 1. WIFI 因为使用了旧版luci(为了兼容lean大的软件包)和新版系统, 首次配置wifi时由于不兼容,可能会出现无法保存的...
  • DDNS 网络唤醒 vlmcsd UPnP Turbo ACC 网络加速 注意事项(务必阅读) 1. WIFI 最好通过ssh直接修改/etc/config/wireless,否则很可能会出现wifi无法启动的现象,这是因为luci修改时会默认添加country,mu_...

空空如也

空空如也

1 2 3 4
收藏数 68
精华内容 27
关键字:

新网ddns