首页 > 后端开发 > 正文

用JAVA Socket可以实现同一路由器下的两台电脑进行通信。那么如果不是同一路由器的电脑可以通信吗?

2024-07-01 22:29:59 | 我爱编程网

今天我爱编程网小编整理了用JAVA Socket可以实现同一路由器下的两台电脑进行通信。那么如果不是同一路由器的电脑可以通信吗?相关信息,希望在这方面能够更好帮助到大家。

本文目录一览:

用JAVA Socket可以实现同一路由器下的两台电脑进行通信。那么如果不是同一路由器的电脑可以通信吗?

用JAVA Socket可以实现同一路由器下的两台电脑进行通信。那么如果不是同一路由器的电脑可以通信吗?

可以 但是会困难很多 就像qq这样的软件

首先就是把ttl设的大一些 这样保证过路由的时候不会把你的包扔了

其次就是一个NAT的问题,如果是你和固定ip的服务器连接还好,就怕是两个客户端点点互联,对等体的连接是有些困难的,因为所有的pc几乎都在NAT后面

比如你是192.168.0.1 而我是192.168.0.2 可是杂俩根本就不在一个网段,

这两个地址都是只是NAT后面的保留地址

过NAT的时候,可能你实际是123.1.1.1 而我是203.1.1.1 这次是这样 下次还会变 DHCP么

两个进程要想通信,就得知道彼此的真实socket

两个程序怎么知道彼此的ip呢?

这就需要一个固定ip的第三点(中心点服务器)

你和我上来都进行对固定ip的第三点连接 第三点就会拿到你和我的NAT前面的真实地址

然后第三方 把我的真实地址告诉你 把你的告诉我

这样咱们就可进行点对点了

这就像我不知道你的电话,你也不知道我的电话,咱们怎么联系

只能通过路人甲,这个路人甲的电话是固定且已知的,咱们都先给路人甲打电话,然后他手机就能显示你的和我的号码了,他再把彼此的号码发给对方,双方就知道对方的号码了,就可以互相打电话了

比如TCP与UDP的打洞和穿洞 就是这种NAT穿越技术 这是P2P的基础 也是真实网络环境下点点互联的一个比较普遍的方案

用JAVA Socket可以实现同一路由器下的两台电脑进行通信。那么如果不是同一路由器的电脑可以通信吗?

JAVA如何与路由器进行交互,如何访问和控制路由器的ACL?

这个问题决定于路由器提供哪些访问方式(不考虑修改路由器内部系统的前提下)。

通常路由器提供的访问方式有web\ssh\telnet三种方式

ssh和telnet都是命令行模式输入指令,web则是通过uri传输指令

1、通过命令行。首先,java可以通过ssh模块或者普通的tcp做到访问路由器。然后携带用户密码通过路由器的认证。接下来,就是看路由器内部的命令行指令了。这种方法类似于用java写一个简单的tcp client端,并将特定的字符串通过tcp连接传给路由器。

2、通过web。假如你可以通过网页修改路由器的ACL,那么你用java同样可以。java有现成的模块模拟浏览器,浏览器的模式只不过是访问路由器的一个URL,然后post一串参数。你用java可以同样做到。

这两种模式都可以。后面在我看来更简单

用JAVA Socket可以实现同一路由器下的两台电脑进行通信。那么如果不是同一路由器的电脑可以通信吗?

用浏览器进入cisco路由器,出现下图,java开启是什么意思?

我爱编程网(https://www.52biancheng.com)小编还为大家带来用浏览器进入cisco路由器,出现下图,java开启是什么意思?的相关内容。

这个是ASDM界面加载界面,cisco路由器的ASDM是在java环境下运行的,所以你在java的官网上下载安装上java软件,就可以运行cisco asdm了。(前提是你在路由器上开放http server了,cisco默认是没有开启asdm的)。我爱编程网

以上,就是我爱编程网小编给大家带来的用JAVA Socket可以实现同一路由器下的两台电脑进行通信。那么如果不是同一路由器的电脑可以通信吗?全部内容,希望对大家有所帮助!更多相关文章关注我爱编程网:www.52biancheng.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“用JAVA Socket可以实现同一路由器下的两台电脑进行通信。那么如果不是同一路由器的电脑可以通信吗?”相关推荐
termux可以同时运行多少个容器
termux可以同时运行多少个容器

python安卓安卓运行python如何在安卓手机上编程Python代码并运行?1、在安卓手机上安装Termux。Termux是安卓手机中较高级的终端模拟器,不仅开源,而且不需要root,支持apt的管理软件包,能够十分方便地安装软件包。下载方式直接搜索Termux即可,简单方便。2、成功安装后,点击Termux运行,并开始编程。安装Termux之后,可以在手机桌面看到该软件,

2024-03-22 02:37:23
想要学python,对编程一窍不通的人可以学习吗?
想要学python,对编程一窍不通的人可以学习吗?

想要学python,对编程一窍不通的人可以学习吗?Python适合哪些人学?没有基础能不能学Python?Python语言在时代的浪潮中崛起,速度之快,影响之巨大,影响力已经远远超出我们的想象。伴随着人工智能时代的到来,Python开始变得非常之火。那么,没有基础能学Python吗?下面来看看吧。首先,我们不得不要去了解一下Python到底适合哪些人学?1.编程菜鸟新手:非

2024-02-20 03:01:32
微信有JAVA通用版吗?
微信有JAVA通用版吗?

微信有JAVA通用版吗?微信官方没有JAVA通用版。微信版本:iOS版、Android版、MAC版、微信电脑插件版(Windows、Windouwsphone7、Windouwsphone8)、symbian版、BlackBerry版、BlackBerry10版、series40版。扩展资料微信版本介绍:(1)微信支持多种语言,支持Wi-Fi无线局域网、2G,3G和4G移

2024-04-02 19:52:30
java 如何生成可以在其它电脑上运行的文件?
java 如何生成可以在其它电脑上运行的文件?

java如何生成可以在其它电脑上运行的文件?在其他电脑上安装java环境就可以运行了.就是你开发的时候也要安装的那个JDK环境.也叫JAVA虚拟机吧.其实java程序并不是在某个操作系统下运行的,而是在java虚拟机里运行的.所以你想要在别的电脑或者其他设备上运行java程序,必须要有这个java虚拟机环境.在这台电脑装了JDK能运行java程序,在另一台电脑不装JDK怎样运行

2024-06-11 22:38:26
怎么把JAVA写的代码打包成电脑可以直接执行的文件
怎么把JAVA写的代码打包成电脑可以直接执行的文件

怎么把JAVA写的代码打包成电脑可以直接执行的文件可以引出为”可执行jar“(项目必须有mian方法),然后双击运行即可。第一步:在项目上右击,选择”Export“,之后找到”RunnableJarfile“。第二步:在”Launch“下拉选中选择”main“方法入口类,然后选择”Browse“后,输入”jar“名称,点击”Finsh“即可完成可运行jar制作。我编写的JAVA

2024-06-24 04:23:09
如何用java实现一个计时器?
如何用java实现一个计时器?

JAVA计时器求大神//声明图形界面元素private JLabel lab_time;private JButton but_start;private JButton but_end;private JButton but_reset;//初始化界面元素,布局,注册时间监听器setLayout(null);setSize(400, 300);lab_time = new JLabel("

2024-06-18 13:44:35
Win10的平板二合一电脑能安装Python吗?
Win10的平板二合一电脑能安装Python吗?

Win10的平板二合一电脑能安装Python吗?WINDOWS10的平板二合一电脑是完全可以安装Python的,Python对电脑的硬件配置要求并不是很高,只要具备中等配置的电脑,就可以安装Python,因此你可以到Python官方网站上下载安装包,然后直接在电脑上进行安装就可以了,完全没有任何问题,非常的方便。学习python是用Mac好还是win好?学习python是用Ma

2024-02-07 08:57:26
Javaweb 的过滤器是如何实现的?
Javaweb 的过滤器是如何实现的?

Javaweb的过滤器是如何实现的?Javaweb的过滤器是通过实现Filter接口来实现的。Filter接口有三个方法:init()、doFilter()和destroy()。其中,init()方法用于初始化过滤器,doFilter()方法用于过滤请求和响应,destroy()方法用于销毁过滤器。在web.xml文件中使用和元素对编写的filter类进行注册,并设置它所能拦截的资源

2024-05-22 19:51:00