社区
Java SE
帖子详情
JAVA Socket如何访问公网IP
rockets311
2012-02-13 08:15:08
例如同在本机或同在一个局域网的话:服务端:
ServerSocket server = new ServerSocket(8888);
……
客户端
Socket socket = new Socket("127.0.0.1",8888);
//或者Socket socket = new Socket("192.168.0.111",8888);
……
这样即可。
但是如果不在本机也不在一个局域网中,服务端在公网呢?
代码该怎么写呢?
...全文
4338
12
打赏
收藏
JAVA Socket如何访问公网IP
例如同在本机或同在一个局域网的话:服务端: ServerSocket server = new ServerSocket(8888); …… 客户端 Socket socket = new Socket("127.0.0.1",8888); //或者Socket socket = new Socket("192.168.0.111",8888); …… 这样即可。 但是如果不在本机也不在一个局域网中,服务端在公网呢? 代码该怎么写呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
rockets311
2012-02-13
打赏
举报
回复
测试通过,谢谢你!也谢谢各位了!结贴!
ldhbq2015
2012-02-13
打赏
举报
回复
是的,
rockets311
2012-02-13
打赏
举报
回复
假如服务端的路由器的特定端口如:2222映射了局域网如:192.168.0.120,
知道了它的公网的IP如:112.120.133.62,那么,服务端是否应该这样写:
ServerSocket server = new ServerSocket(2222);
……
客户端:Socket socket = new Socket("112.120.133.62",2222);
……
周靖峰
2012-02-13
打赏
举报
回复
应该是一样的吧
ssyliusha
2012-02-13
打赏
举报
回复
[Quote=引用 7 楼 aesir2012 的回复:]
127.0.0.1是本地
192.168.0.111是c类私有地址内部局域网用的
想知道自己的外网ip 可以访问ip168查看
你只用把Socket socket = new Socket("外网ip",8888);改了就行了
[/Quote]
如果不在服务器时局域网 不是单线的,,, 那就必须得在路由器上映射你的ip。。 不然你查到了ip还是没用。。。 反正你本机上能够ping通外网ip 就肯定可以连接通。。
尼伯龍根
2012-02-13
打赏
举报
回复
127.0.0.1是本地
192.168.0.111是c类私有地址内部局域网用的
想知道自己的外网ip 可以访问ip168查看
你只用把Socket socket = new Socket("外网ip",8888);改了就行了
ssyliusha
2012-02-13
打赏
举报
回复
路由器上映射你局域网ip。。。这方法是修改路由器属性。。 跟你代码没关系。。
ssyliusha
2012-02-13
打赏
举报
回复
局域网的话 就需要在 路由器上 映射你的局域网ip。。。。
具体办法去百度查吧,,我也忘记了。。
映射完成 外网就能够访问了。。。
你可以在自己机器上 cmd里面 ping ip(这个ip就是外网的局域网ip) 如果ping通了 就ok了。。
rockets311
2012-02-13
打赏
举报
回复
如果那个外网也在一个另一个局域网里。这样可以吗?
ssyliusha
2012-02-13
打赏
举报
回复
Socket socket = new Socket("127.0.0.1",8888);
"127.0.0.1" 这个是连接本地服务器的ip
Socket socket = new Socket("192.168.0.111",8888);
"192.168.0.111" 这个是连接局域网的服务器的ip
你只需要知道你要连接的外网ip 就可以了。。。 写法一样的。。没有任何区别~~ 只是速度不会那么快。。
rockets311
2012-02-13
打赏
举报
回复
貌似有点区别吧!
aotian16
2012-02-13
打赏
举报
回复
没区别吧
Socket
Http代理插件
访问
公网
1、使用场景:应用部署的...2、附件有源码,直接打包运行
Socket
Server,就能启动一个
Socket
的Http
访问
代理服务了,Test源文件是调用例子,直接调用proxyRequest方法(传入
ip
,port,需要代理
访问
的
公网
url参数)即可。
Socket
在
公网
上通信
描述中提到的“使用花生壳加路由映射”是一种解决
公网
IP
访问
问题的方法,尤其适用于动态
IP
或无固定
公网
IP
的环境。 花生壳是一款动态域名解析服务(DDNS)软件,它能够将用户的动态
IP
与固定的域名绑定,使得外部设备...
java
公网
ip
查询工具(附源码).z
ip
Java
公网
IP
查询工具是一款基于
Java
语言开发的实用小软件,主要功能是获取互联网上的设备的
公网
IP
地址。这款工具能够帮助开发者或者普通用户快速、准确地了解自己在互联网上的对外显示
IP
,对于网络调试、远程服务配置...
使用
Socket
传输音频
在IT行业中,网络编程是构建分布式系统的关键技术之一,而
Java
编程语言提供了强大的网络通信工具,如
Socket
。本文将深入探讨如何使用
Java
的
Socket
来实现音频数据的传输。 首先,
Socket
在网络编程中扮演着“管道”的...
Java
实现UDP穿透NAT技术
1. **STUN(Traversal Using Relays around NAT)协议**:STUN是NAT穿透的基础,它允许设备发现自己的
公网
IP
和端口映射。
Java
中没有内置的STUN库,但可以使用第三方库如JSTUN或libjingle来实现。 2. **服务器端**:...
Java SE
62,634
社区成员
307,266
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章