步骤:
将网线一端连接电脑,一端插在光猫上。
移动宽带后台地址为http://192.168.1.1/。
注意需要使用超管账号登录,而不是光猫上的用户名和密码。否则没有权限
获取超管账号和密码方法:
获取MAC字符串
有两种方式:
方式一:cmd下输入arp -a,找到192.168.1.1对应的一串MAC。补成完成的MAC地址(冒号之间都是两位,如果只有一位,在前面补个0),去除冒号转成大写字母。
方拾二:光猫上有MAC地址,补成完整的MAC地址,去除冒号转成大写字母。
在浏览器中输入http:/192.168.1.1/cgi-bin/telnetenable.cgi?telnetenable=1&key=
key的值为上面获取到的MAC字符串。
回车后,出现telnet开启则成功,否则失败(MAC地址没获取正确)
cmd下输入telnet 192.168.1.1,回车看到login,然后输入admin回车。然后需要输入密码,密码为Fh@+MAC字符串后6位。
成功后出现#,输入
load_cli factory
show admin_name
show admin_pwd
就可以看到超管账号和密码了。
登录192.168.1.1,账号密码为刚才获取的。网络->宽带设置->IP模式,选择IPv4&IPv6.IPv6选择动态Ip


我架设了rocketmq-conslole,端口8080
浏览器地址输入htt://[ipv6]:8080,即可访问到服务

在实现上面的架设方案后,我们很容易观察到两个缺点:
如何解决以上问题呢,其实很简单我们可以使用域名,由域名解析到我们动态的Ipv6地址。
我这里使用的是阿里云,阿里云域名SDK提供解析功能。
本地启一个JAVA应用,定时获取IPV6,调用SDK,将域名解析到我们本地的IPV6
需要注意的是域名的记录类型应为AAAA

获取IPv6的方法:有多个Ipv6,其中2049开头的是我们需要的公网Ipv6地址。
/**
* 获取当前主机公网IP
*/
private String getCurrentHostIP() throws UnknownHostException {
InetAddress[] allByName = InetAddress.getAllByName("DESKTOP-GHI2HUI");
String ret = null;
for(InetAddress addr : allByName){
if(addr.getHostAddress().contains("2409")){
ret = addr.getHostAddress();
return ret;
}
}
return ret;
}
将域名解析到Ipv6.
官网有给到案例代码,按照案例更新ip即可。
代码多,没必要搞懂,官网案例拿来就能用,把解析IPv4改成上面的IPv6,解析类型改为AAAA(IPv6)。就不贴了,又不懂的或想要代码私聊或者评论区说。