C#获取路由器外网IP,MAC地址
C#实现的获取路由器MAC地址,路由器外网地址。对于要获取路由器MAC地址,一定需要知道路由器web管理系统的用户名和密码。至于获取路由器的外网IP地址,可以不需要知道路由器web管理系统的用户名和密码,但是需要有一个代理页面获取客户端公网ip地址的,这样C#请求此页面即可获取到路由器公网ip地址。如:
http://xxxx.getip.ashx
测试路由为水星 MR804,水星 MR808,都可以成功重启路由和获取到路由器MAC和外网IP地址
源代码下载地址:C#实现路由器重启更换IP,获取路由器MAC地址源代码
using System.Text; using System.Net; using System.Text.RegularExpressions; using System.IO; public class Router {Encoding gb2312 = Encoding.GetEncoding(936);//路由器的web管理系统默认编码为gb2312/// <summary>/// 使用HttpWebRequest对象发送请求/// </summary>/// <param name="url"></param>/// <param name="encoding">编码</param>/// <param name="cache">凭证</param>/// <returns></returns>private static string SendRequest(string url, Encoding encoding,CredentialCache cache){HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);if (cache != null){request.PreAuthenticate = true;request.Credentials = cache;}string html = null;try{HttpWebResponse response = (HttpWebResponse)request.GetResponse();StreamReader srd = new StreamReader(response.GetResponseStream(), encoding);html = srd.ReadToEnd();srd.Close();response.Close();}catch (Exception ex) { html = "FALSE" + ex.Message; }return html;}/// <summary>/// 获取路由MAC和外网IP地址/// </summary>/// <param name="RouterIP">路由IP地址,就是网关地址了,默认192.168.1.1</param>/// <param name="UserName">用户名</param>/// <param name="Passowrd">密码</param>/// <returns></returns>private string LoadMACWanIP(string RouterIP,string UserName,string Passowrd){CredentialCache cache = new CredentialCache();string url = "http://" + RouterIP + "/userRpm/StatusRpm.htm";cache.Add(new Uri(url), "Basic", new NetworkCredential(UserName, Passowrd));return SendRequest(url, gb2312, cache);} }
出处:http://www.coding123.net/article/20120220/charp-get-router-wlan-ip-mac-address.aspx
转载于:https://www.cnblogs.com/mq0036/p/4644795.html
C#获取路由器外网IP,MAC地址相关推荐
- Golang 获取当前外网IP/地址/运营商
Golang 获取当前外网IP/地址/运营商 - Go语言中文网 - Golang中文社区 package mainimport ("fmt""io/ioutil&quo ...
- Android 获取本地外网IP、内网IP、计算机名等信息
一.获取本地外网IP public static String GetNetIp() { URL infoUrl = null; InputStream inStream = null; try { ...
- 获取客户端外网IP,省份,城市,运营商
/// <summary> /// 获取客户端外网IP,省份,城市,运营商 /// 2012年12月18日 15:07 /// </summary> ...
- Android 获取客户端外网IP和服务端IP
项目组最近添加新需求,要获取客户端和服务端IP,削微研究了一下,总结如下: 1.获取客户端外网IP(为啥不要内网,因为那玩意没鸟用,外网IP起码能确定客户端的地区位置) 目前只有一种方法可以获取:发送 ...
- java获取本地外网ip地址
获取本机外网ip地址 public static String getIP() {String ip = "http://pv.sohu.com/cityjson?ie=utf-8" ...
- 获取本地外网ip地址
正常情况查看本地外网ip,通过百度就可以看到,有时候使用了vpn,就不对 可以在命令行执行下面命令 curl ifconfig.me 响应:116.235.132.210root@DESKTOP-UA ...
- 查看华为路由器外网ip
1.运行里面输入 cmd /k "ipconfig /all",解决运行ipconfig /all的时候不显示窗口.一闪就没有了的问题 2.登陆路由器的管理界面,找不到 :&quo ...
- DIY个人智能家庭网关—— python篇之获取路由器外网地址
免费的DDNS域名服务有时候刷新不及时,解析不到路由器的IP,就可以采用这种方法来解决 #!/usr/bin/env python # -*- coding: utf-8 -*- import soc ...
- python 获取公网 外网 ip 几种方式
实例如下: from urllib.request import urlopen from json import loadmy_ip = urlopen('http://ip.42.pl/raw') ...
最新文章
- ruby生成C++头文件引用关系图
- android 绘画,Android绘图基础
- jenkins获取远程服务器文件,Jenkins用SSH传输文件到远程服务器
- GIAC 2020 全球互联网架构大会演讲实录:基于TarsGo的微服务技术架构实践
- 863. 二叉树中所有距离为 K 的结点
- path.join 和 path.resolve的区别
- java学习(117):list迭代器和包含方法
- PHP闭包(Closure)初探(转载 http://my.oschina.net/melonol/blog/126694?p=2#comments)
- android 九宫格封装,Android 九宫格布局
- Java二进制小数表示_《Java编程的逻辑》笔记9--小数的二进制表示
- AdrenoProfiler对opengles的性能分析
- Linux下安装composer报错 The openssl extension is missing / The zlib extension is not loaded等等
- 蓝桥杯2021年第十二届C++省赛第三题-直线
- syslog日志转换器_图解将windows日志转成syslog格式并发送
- winform直接控制云台_大疆DJI RSC2相机云台评测:折叠设计带来更多玩法
- HTML5中weight属性的作用,css font-weight属性怎么用
- C++如何优雅地释放资源
- 电子类通信类和计算机类ei期刊,电子类通信类和计算机类EI期刊(大部分免费)
- FPGA--(基于Quartus的FPAG程序下载与固化教程)VGA显示实验之上板测试
- 威纶通触摸屏如何隐藏系统设置箭头图标及通过参数进入系统设置?