如果通过JAVA重启路由器和获取IP地址

1、路由器的用户名和密码我是知道,这里不是hacker技术,是为了方便

2、借助了Fiddler这个工具来对路由器访问的请求进行解析

3、通过Fiddler这个工具让我们了解到DI-504应用的是Basic这个认证方式

4、参考代码:

package com.van.client;

import java.io.IOException;  
import java.io.InputStream;
import java.net.HttpURLConnection;  
import java.net.MalformedURLException;  
import java.net.URL;  
/**
 * 
 * @author van
 *
 */  
public class Router {  
    private static final String USERNAME_PASSWORD = "admin:a";  
    public Router() {  
        this.disconnect();  
    }  
    
    //http://192.168.3.1/do_cmd.htm?CMD=SYS_CONF&CCMD=0&nowait=1重启路由器
    private void disconnect() {  
        String urlStr = "http://192.168.3.1/info.htm";  
        this.runCgi(urlStr, USERNAME_PASSWORD);  
    }  
  
    private void runCgi(String urlStr, String authorizationStr) {  
        URL xUrl = null;  
        HttpURLConnection xHuc = null;  
        try {  
            xUrl = new URL(urlStr);  
            if (xUrl != null) {  
                xHuc = (HttpURLConnection) xUrl.openConnection();  
                if (xHuc != null) {  
                    if (!"".equals(authorizationStr)) {  
                        xHuc.setRequestProperty("Authorization", "Basic "  
                                + Base64.encodeBytes(USERNAME_PASSWORD  
                                        .getBytes()));  
                    }   
                    xHuc.setRequestProperty("Content-Length", "0");  
                    xHuc.setRequestProperty("Content-Type",  
                            "application/x-www-form-urlencoded");  
                    xHuc.connect();  
                    String aa = xHuc.getResponseMessage();  
                    ////下面这些是用来获取IP地址的
                    InputStream in=xHuc.getInputStream();
                    int chint=0;
                    StringBuffer sb=new StringBuffer();
                    while((chint=in.read())!=-1){
                    	sb.append((char)chint);
                    }
                    String html=sb.toString();
                    int first=html.indexOf("wanIP=\"");
                    String content=html.substring(459,471);
                    System.out.println(content);  
                }  
            }  
        } catch (MalformedURLException e) {  
            e.printStackTrace();  
        } catch (IOException e) {  
            e.printStackTrace();  
        } finally {   
            if (xHuc != null) {  
                xHuc.disconnect();  
            }  
        }  
    }  
    public static void main(String[] args) {  
        new Router();  
    }
  
}  

  其中文中引用到的Base64的java文件在插件里面,还有一些API说明

Java实现TP-Link路由器管理:重启与断开连接功能 Java网络编程涉及使用Java编程语言创建网络连接以及网络服务。它主要通过Java标准库中的java.net包来实现。利用这些类和接口,开发者可以创建服务器和客户端应用程序,实现数据传输和网络通信。API(Application Programming Interface,应用程序编程接口)在路由器管理中充当了中间层的角色,它允许管理员通过编程的方式与路由器进行通信和控制。这为自动化管理提供了一种便捷的方法,可以远程设置路由器、监控网络状态、配置网络参数等。 阅读详情

相关推荐

java 代码 根据目标网址列出经过的路由IP和经过的位置

java 代码 根据目标网址列出经过的路由IP和经过的位置 里面的代码是直接从myeclipse里面拷贝下来的 直接import就可以用了

java 获取路由ip_如何在Java中确定路由器/网关的IP?

不幸的是,Java并不像其他语言一样愉快.这是我做的:import java.io.*;import java.util.*;public class ExecTest {public static void main(String[] args) throws IOException {Process result = Runtime.getRuntime().exec("traceroute ...

weixin_29303701的博客 1344

java代码实现tplink路由器重启及连接断开功能

java代码实现tplink路由器重启及连接断开功能,一个小的demo程序,希望对大家有启发

java实现路由器重启_java 重启路由器

思路:模拟http请求,调用路由器重启命令,路由器中的设置项,所有的操作都是一个url请求,只是每个请求都要带一个权限过去,这个权限就放在请求头中说明:路由器的密码是base64编码后的结果,所以需要转一下。重启命令:http://192.168.2.1/userRpm/SysRebootRpm.htm?Reboot=重启路由器其他N多命令,f12自己看request.addHeader("Ref...

weixin_39658619的博客 320

java 重启 路由器 DI-604

NULL 博文链接:https://xylonwang.iteye.com/blog/486850

车载导航测试,面试常见问题

车载导航测试是汽车软件测试的重要组成部分,涉及验证导航系统的功能、性能、可靠性和用户体验。在面试中,面试官通常会考察候选人的测试思维、问题解决能力和实际经验。以下我将从常见问题类别入手,逐步介绍面试中的高频问题,并提供结构化分析。通过以上结构化准备,你能在面试中自信应对车载导航测试相关问题。用户体验测试关注界面友好性和交互流畅性,安全测试则涉及功能安全和数据隐私。功能测试聚焦于导航核心功能的正确性,如路线规划、位置定位和地图显示。面试官会考察你如何识别、报告和跟踪缺陷,以及熟悉测试工具。

m0_69889939的博客 527

java重启路由器并获取IP

package com.cnipr.control; import java.io.IOException;     import java.io.InputStream;   import java.net.HttpURLConnection;     import java.net.MalformedURLException;     import java.net.URL;

享受学习的过程 2758

Unity Android构建报错:compileSdk 35兼容性五层定位法

Android构建中的compileSdk是编译时API目标版本,其升级并非孤立操作,而是触发JDK、Android Gradle Plugin(AGP)、NDK、targetSdk与Unity引擎版本之间强耦合校验的起点。当出现'using a newer Android Gradle plugin to use compileSdk = 35'类报错,本质是代际技术栈错配——例如AGP 7.1.3不识别compileSdk 35所需Java 17语法,或NDK 21与AGP 7.4的ABI规范冲突。该问

weixin_32496547的博客 569

TOPSIS+熵权法组合拳:5分钟学会供应商选择决策模型

本文详细介绍了如何运用TOPSIS和熵权法这对黄金组合,快速构建科学、客观的供应商评估决策模型。通过数据标准化、权重计算和综合排序,帮助企业在半小时内完成高效、准确的供应商选择,解决传统主观打分法的弊端,提升供应链管理效率。

weixin_29051149的博客 278

电驱系统功率级“多合一”解决方案

如何提升电驱动系统的产品性能、减小能耗和进一步轻量化,以加强整车市场竞争力,是摆在国内外新能源车企面前的共同课题。为此,具有多年动力总成电子系统开发经验的美国著名半导体及电子解决方案专家——德州仪器(Texas Instrument)提出了多种功率级别“多合一”整合方案和设计思路,助力新能源车企提升技术优势。

yessunday的专栏 1372

[RK3399][Android7.1-tvbox] Ethernet:机器通过交换机连接路由器,重启路由器后,机器无法获取ip的问题

测试平台 Platform: RK3399 OS: Android 7.1.1 现象 机器通过交换机连接路由器,重启路由器后,机器无法获取ip的问题 解决方案 commit 14d08d038eb19fca308970e5bbca5d7c26790303 Author: lkd <service@t-firefly.com> Date: Wed Apr 18 10:55:49 20...

weixin_39966398的博客 938

Windows平台无人机仿真:从零搭建SITL环境与QGC联调

本文详细指导了在Windows平台上从零搭建无人机软件在环(SITL)仿真环境,并与QGroundControl(QGC)进行联调的完整流程。通过使用Cygwin工具链,开发者可以在没有实体硬件的情况下,模拟运行ArduPilot飞控,并通过MAVLink协议连接QGC地面站进行全功能测试,为无人机软件开发提供了一个安全、经济的虚拟沙盒环境。

weixin_29239279的博客 412

教你使用JAVA代码重启路由器(TP-LINK)

目录前言:解决方案: 前言: 在我们写爬虫时,防止目标网站封禁我们的IP,可能会经常重启路由器或光猫,重新获取IP地址 解决方案: 直接上代码: import org.openqa.selenium.By; import org.openqa.selenium.Dimension; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.seleniu

码觉客的博客 1万+

手机热点+Advanced IP Scanner:5分钟搞定树莓派无屏SSH连接(附详细配置截图)

本文详细介绍如何利用手机热点和Advanced IP Scanner工具快速实现树莓派的无屏SSH连接。通过简单的WiFi配置和IP扫描,5分钟内即可完成连接,特别适合外出调试或空间有限的工作环境。文章包含详细步骤、配置截图和常见问题解决方案,帮助开发者高效管理树莓派设备。

ik678901234的博客 955

关务管理项目专题:SAP 与关衡关务系统的进出口报关业务集成(1)需求和方案整理

一个拥有进出口业务的企业就需要报关,而关务系统就是用来辅助企业日常进出口报关,同时数字化、合规化报关业务的有效工具。本章属于关务管理项目专题系列,以 SAP 与关衡关务系统的进出口报关业务集成为实例,详细讲解报关业务的需求和方案整理。

SAP李斌,本人承诺所有原创文章均不使用任何AI生成技术,请大家放心阅读。 2078

个人项目-python重启路由器

本文参考https://www.cnblogs.com/id404/p/4772722.html的博文对自己的路由器进行分析,并且实现重启路由器的操作 原理:利用burp site捕获登录路由器时的请求,然后调用python的requests库来重现该请求即可达到登录路由器的目的,同样只要捕获到重启路由器操作时浏览器发送到路由器的请求,然后重现即可。 1.本人第一次用burp site,不太清楚怎...

木头健的博客 1454

【WLAN】【测试】WPS测试方法小结

手机 一般稍微老的手机会支持,新手机反而不支持。 比如小米6(系统版本新的话不支持)在设置——高级设置——WPS连接。 笔记本 有些笔记本(如Surface Laptop 3)天生支持WPS,比如在连接某SSID的时候,会有“也可以通过按路由器上的按钮连接”这样的字样,出来后按AP的WPS按键即可以进行连接。 Qss软件 AP mesh组网中,Controller和Agent之间通过WIFI组网,可使用WPS的方式进行连接。可利用这点用Agent来测试AP的WPS功能。 ...

一介草民,只为生活。 1万+

java实现设置静态IP地址和网关(附带源码)

java实现设置静态IP地址和网关(附带源码)

欢迎来到我的博客!这里是一个专注于计算机技术的分享平台,涵盖编程开发、算法研究、系统架构、软件工程等多个领域。无论你是初学者还是资深开发者,都能在这里找到有价值的内容。 1423

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

将Linux和Windows动态获取的IPV6地址自动同步至阿里云域名

摘要:本文介绍了利用IPv6和阿里云域名实现远程访问的解决方案。作者因工作需要,通过电信宽带获取IPv6地址,并购买阿里云域名绑定动态IPv6。文章详细讲解了路由器配置、阿里云DNS设置,并分享了自研的Java程序(GitHub开源),用于自动同步本地IPv6地址到阿里云DNS。程序支持多网卡、多子域名配置,适用于Windows/Linux系统,解决了IPv6地址变动导致的远程访问问题,同时可用于Steam联机游戏等场景。使用前需准备阿里云域名和Java运行环境。

weixin_44197651的博客 819

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

java登录无线路由器_路由器的使用

第一步、连接无线路由器把从房东家拉过来的网线,连接到路由器的WAN口;在准备一根网线,网线一端连接计算机,另一端连接路由器1、2、3、4口中的任意一个接口,如下所示。 从房东家拉网线上网时,路由器的正确连接方式注意问题:(1)、按照上面介绍的方法连接无线路由器后,电脑暂时不能上网了;当无线路由器设置联网成功后,电脑自动就可以上网了。(2)、很多新手用户有疑惑,这样连接后电脑都不能上网了,怎么能够设...

weixin_35051558的博客 846

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

java 不停的换ip地址_为什么电脑IP地址总是自动改变

自己的IP会变化是因为自己或家庭使用的宽带不是专线,所以IP不是固定的。ADSL用户的IP地址都是通过DHCP动态获取得到的,意思是你每次拨号的时候,都会获得一个不同的IP地址,运营商这样做是为了提高IP地址的利用率,因为国内的公网IP地址实在是太紧缺了。 为什么家用宽带上网会是动态IP:因为宽带所连接的DHCP服务器指派的IP地址是动态IP,用户每次登录认证所获取到的IP地址是不固定的。动态IP...

weixin_33303537的博客 816

Android12 实现根据路由MAC地址判断的以太网网络黑名单功能

1、我开始在Android12源码上试了很多方法都没有找到关闭以太网连接的方法,只找到了禁止以太网模块的方法,但是禁止了以太网模块就不能获取网线拔出或者网线插入的动作,后来我找到了源码中的ConnectivityService类,在这个类里面实现路由器MAC地址获取,判断,以太网开关等操作,位置:packages/modules/Connectivity/service/src/com/android/server/ConnectivityService.java。

csdn_1233的博客 1785

linux主ip地址 网络信息不可用,win10 安装虚拟机提示 主IP地址显示网络信息不可用...

问题:在虚拟机详情下面显示主ip地址:网络信息不可用解决办法:先root用户[root@dfhf~]#cd ..[root@dfhf/]#cd /etc/sysconfig/network-scripts进入network-sctipts然后ls会有个ifcfg-ens33的文件vi这个ifcfg-ens33文件进入编辑输入i 进入编辑模式把ONBOOT=no的no改为yes输入 “:wq” ...

weixin_29280219的博客 6169

java如果模拟请求重启路由器(网络爬虫常用),还有java如何下载图片

我们如果在公司或家里使用网络爬虫去抓取自己索要的一些数据的时候,常常对方的网站有defence机制,会给你的http请求返回500错误,只要是相同IP就请求不到数据,这时候我们只能去重启路由器,这样IP地址会改变,网络爬虫就能正常工作了 下面是通过发送Socket请求来模拟路由器的重启指令: protected void rebotadsl() { try { BufferedO

baidu_nod的专栏 1947

昨天镐了一个晚上,机器终于可以动态的分配IP地址了

      我们用的是小区宽带,由于有两台计算机,所以买了一个路由器同时上网。近些天由于重装了机器,不是怎么搞得,机器只能静态的分配IP地址才能上网,(以前都是动态的分配IP的,以前我也不知道是怎么搞定的),如果动态的分配IP,重启后,就是连路由器都连不上,用ipconfig察看IP 竟然是4个零。由于静态的分配IP地址上网有一些不好的地方(听别人说的,局域网内的蠕虫可能影响上网的速度)所以我坚决

skyflyings的专栏 2326
上一篇: 第三:快速编译程序GNUmakefile
下一篇: 配置TOMCAT6的中mysql数据库连接池
cainwise
博客等级 码龄20年 0粉丝 32原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值