社区
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);
……
这样即可。
但是如果不在本机也不在一个局域网中,服务端在公网呢?
代码该怎么写呢?
...全文
4336
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、使用场景:应用部署的服务器在局域网内,因安全等原因没能开通跟
公网
的连接,但项目又需要
访问
互联网上的接口资源,只能通过内网中可以跟
公网
连接的一台服务器作为代理跳转请求
公网
资源,觉得其他代理插件麻烦就自己写了一个
Socket
Http代理,简单、方便使用、易维护。 2、附件有源码,直接打包运行
Socket
Server,就能启动一个
Socket
的Http
访问
代理服务了,Test源文件是调用例子,直接调用proxyRequest方法(传入
ip
,port,需要代理
访问
的
公网
url参数)即可。
Socket
在
公网
上通信
使用花生壳加路由映射, linux下运行服务器,可以让客户端不管是gprs,3g还是wifi下都能通信
java
公网
ip
查询工具(附源码).z
ip
java
公网
ip
查询工具(附源码).z
ip
使用
Socket
传输音频
使用
Socket
传输音频,使用
Socket
传输音频
Java
实现UDP穿透NAT技术
用
Java
实现的UDP穿透NAT技术,内有详细的注释,完全可以自己看懂的
Java SE
62,634
社区成员
307,269
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章