如何让android应用程序通过代理联网

如何让android应用程序通过代理联网,第1张

一般情况下通过代才能连接到外网的网络在使用android 模拟器是连接不上网的,腊唤虽然在模拟器里面设置了代理服务器的IP和端口后,可以模拟器的浏览器可以连上网了,(如何在模拟其中设置网络代理请参看这里

但是自己开辩局态发的程序还是连接不上去,在这种情况下可以通过下面的代码来实现应用程序的网络连接!

Proxy proxy=new Proxy(java.net.Proxy.Type.HTTP,new InetSocketAddress("10.0.0.172",80))

HttpURLConnection connection=(HttpURLConnection) url.openConnection(proxy)

这是java.net包的联网方式。还可以用携源Apache的HttpClient连接网络。

DefaultHttpClient httpClient = new DefaultHttpClient()

HttpHost proxy = new HttpHost("10.0.0.172", 80)

httpClient.getParams().setParameter(ConnRouteParams.DEFAULT_PROXY, proxy)

分类: 电脑/网络 >>软件 >>其他软件

解析:

(1) 代理服务原理

代理服务器有很多种,大体来纯磨说有,ftp,socks代理三种,其中又分透明代理和不透明代理。其中透明代理一般是网关,是硬件。所以这里讨论不透明代理。

当机器通过代理服务器上网时。通讯是分两次的,先是机器和代理服务器通讯,再是代理服务器和目的地址通讯。

机器和代理服务器通讯时,目的IP是代理服务器的IP。代理服务器和目的地址通讯时,源IP是代理服务器的IP,当外部的数据也是一样的,在内网中,出现的IP数据,全是内网和代理服务器的IP。因此,从IP包头是看不出任何与外面通讯的信息的。只有从数据中才能看到。

例如,用代理上网。

过程是

机器和代理服务器建立TCP连接。

机器发出GET命令。这时GET命令中包含URL或IP地址,明文

代理服务器将其中的URL转换为IP地址,可能会有DNS。将源数据包中的数据拷贝下来。去掉URL,重新组包,再发出去。

我们需要解析第一个GET包。

现在来看几种代理方式。

(get)

(connect)

ftp (user user@host:port)

ftp (user user@host port)

ftp (open host)

ftp (site host)

ftp (site user@host)

socks5

socks4

这些代理方式都缺尘有一个特点。就是在连接时,都会先和代理服务器连接,发出请求,一般为 mand url,mand就是get,connect,user 等。和ftp都一样,可以通过关键字来识别。而且url是明文。Socks有些特别。它不是明文的,而是十六进制数据。要获得IP地址,还要经过转换。

(2) 目前的代理服务技术

代理服务技术是在一台PC机上安装一套代理软件,主要用于用户对Inter资源的访问。

ICS即Inter连接共享(Inter Connection Sharing)的英文简称,是Windows系统针对家庭网络或小型的Intra网络提供的一种Inter连接共享服务。它实际上相当于一种网络地址转换器,所谓网络地址转换器就是当数据包向前传递的过程中,可以转换数据包中的IP地址和TCP/UCP端口等地址信息。有了网络地址转换器,家庭网络或小型的办公网络中的电脑就可以使用私有地址,并且通过网络地址转换器将私有地址转换成ISP分配的单一的公用IP地址从而实现对Inter的连接。ICS方式也称之为Inter转换连接。

软件:Wingate,、Winproxy

NAT即网络地址转换(Neork Address Translator),从广义上讲,ICS也是使用了一种NAT技做扮斗术,不过我们这里讨论的NAT是指将运行Windows 2000 Server的计算机作为IP路由器,通过它在局域网和Inter主机间转发数据包从而实现Inter的共享。NAT方式也称之为Inter的路由连接。网络地址转换NAT通过将专用内部地址转换为公共外部地址,对外隐藏了内部管理的IP地址。这样,通过在内部使用非注册的IP地址,并将它们转换为一小部分外部注册的IP 地址,从而减少了IP 地址注册的费用。同时,这也隐藏了内部网络结构,从而降低了内部网络受到攻击的风险。

软件:WinRoute、Sygate

(3) 代理数据变代

非透明代理:

上网主机向代理提交TCP连接请求:源ip(上网主机)目标ip(代理服务器)

***********: 45 00 01 9E 64 CE 40 00 80 06 17 C0 C0 A8 FD 91 E...d.@.........

***********: C0 A8 FD E8 12 47 04 38 FB 32 8B 56 7E 55 57 EA .....G.8.2.V~UW.

***********: 50 18 44 70 1B EC 00 00 47 45 54 20 68 74 74 70 P.Dp....GET

***********: 3A 2F 2F 77 77 77 2E 63 63 74 76 2E 63 6F 6D 2E haozs.

***********: 63 6E 2F 20 48 54 54 50 2F 31 2E 30 0D 0A 41 63 / HTTP/1.0..Ac

***********: 63 65 70 74 3A 20 69 6D 61 67 65 2F 67 69 66 2C cept: image/gif,

***********: 20 69 6D 61 67 65 2F 78 2D 78 62 69 74 6D 61 70 image/x-xbitmap

***********: 2C 20 69 6D 61 67 65 2F 6A 70 65 67 2C 20 69 6D , image/jpeg, im

***********: 61 67 65 2F 70 6A 70 65 67 2C 20 61 70 70 6C 69 age/pjpeg, appli

***********: 63 61 74 69 6F 6E 2F 76 6E 64 2E 6D 73 2D 65 78 cation/vnd.ms-ex

000000a0: 63 65 6C 2C 20 61 70 70 6C 69 63 61 74 69 6F 6E cel, application

000000b0: 2F 76 6E 64 2E 6D 73 2D 70 6F 77 65 72 70 6F 69 /vnd.ms-powerpoi

000000c0: 6E 74 2C 20 61 70 70 6C 69 63 61 74 69 6F 6E 2F nt, application/

000000d0: 6D 73 77 6F 72 64 2C 20 61 70 70 6C 69 63 61 74 msword, applicat

000000e0: 69 6F 6E 2F 78 2D 73 68 6F 63 6B 77 61 76 65 2D ion/x-shockwave-

000000f0: 66 6C 61 73 68 2C 20 2A 2F 2A 0D 0A 41 63 63 65 flash, */*..Acce

***********: 70 74 2D 4C 61 6E 67 75 61 67 65 3A 20 7A 68 2D pt-Language: zh-

***********: 63 6E 0D 0A 55 73 65 72 2D 41 67 65 6E 74 3A 20 ..User-Agent:

***********: 4D 6F 7A 69 6C 6C 61 2F 34 2E 30 20 28 63 6F 6D Mozilla/4.0 (

***********: 70 61 74 69 62 6C 65 3B 20 4D 53 49 45 20 36 2E patibleMSIE 6.

***********: 30 3B 20 57 69 6E 64 6F 77 73 20 4E 54 20 35 2E 0Windows NT 5.

***********: 32 3B 20 2E 4E 45 54 20 43 4C 52 20 31 2E 31 2E 2.NET CLR 1.1.

***********: 34 33 32 32 29 0D 0A 48 6F 73 74 3A 20 77 77 77 4322)..Host:

***********: 2E 63 63 74 76 2E 63 6F 6D 2E 63 6E 0D 0A 50 72 .haozs.ne..Pr

***********: 6F 78 79 2D 43 6F 6E 6E 65 63 74 69 6F 6E 3A 20 oxy-Connection:

***********: 4B 65 65 70 2D 41 6C 69 76 65 0D 0A 0D 0A FD 00 Keep-Alive......

代理服务器转换后的数据:源IP(代理服务器) 目IP(网站IP)

***********: 45 00 01 88 5D 4E 40 00 80 06 19 55 C0 A8 FD E8 E...]N@....U....

***********: CA 6C F9 CE 06 AC 00 50 7E 57 F3 C7 E1 41 2F 21 .l.....P~W...A/!

***********: 50 18 44 70 F9 DF 00 00 47 45 54 20 2F 20 48 54 P.Dp....GET / HT

***********: 54 50 2F 31 2E 30 0D 0A 41 63 63 65 70 74 3A 20 TP/1.0..Accept:

***********: 69 6D 61 67 65 2F 67 69 66 2C 20 69 6D 61 67 65 image/gif, image

***********: 2F 78 2D 78 62 69 74 6D 61 70 2C 20 69 6D 61 67 /x-xbitmap, imag

***********: 65 2F 6A 70 65 67 2C 20 69 6D 61 67 65 2F 70 6A e/jpeg, image/pj

***********: 70 65 67 2C 20 61 70 70 6C 69 63 61 74 69 6F 6E peg, application

***********: 2F 76 6E 64 2E 6D 73 2D 65 78 63 65 6C 2C 20 61 /vnd.ms-excel, a

***********: 70 70 6C 69 63 61 74 69 6F 6E 2F 76 6E 64 2E 6D pplication/vnd.m

000000a0: 73 2D 70 6F 77 65 72 70 6F 69 6E 74 2C 20 61 70 s-powerpoint, ap

000000b0: 70 6C 69 63 61 74 69 6F 6E 2F 6D 73 77 6F 72 64 plication/msword

000000c0: 2C 20 61 70 70 6C 69 63 61 74 69 6F 6E 2F 78 2D , application/x-

000000d0: 73 68 6F 63 6B 77 61 76 65 2D 66 6C 61 73 68 2C shockwave-flash,

000000e0: 20 2A 2F 2A 0D 0A 41 63 63 65 70 74 2D 4C 61 6E */*..Accept-Lan

000000f0: 67 75 61 67 65 3A 20 7A 68 2D 63 6E 0D 0A 55 73 guage: zh-..Us

***********: 65 72 2D 41 67 65 6E 74 3A 20 4D 6F 7A 69 6C 6C er-Agent: Mozill

***********: 61 2F 34 2E 30 20 28 63 6F 6D 70 61 74 69 62 6C a/4.0 (patibl

***********: 65 3B 20 4D 53 49 45 20 36 2E 30 3B 20 57 69 6E eMSIE 6.0Win

***********: 64 6F 77 73 20 4E 54 20 35 2E 32 3B 20 2E 4E 45 dows NT 5.2.NE

***********: 54 20 43 4C 52 20 31 2E 31 2E 34 33 32 32 29 0D T CLR 1.1.4322).

***********: 0A 48 6F 73 74 3A 20 77 77 77 2E 63 63 74 76 2E .Host: cctv.

***********: 63 6F 6D 2E 63 6E 0D 0A 50 72 6F 78 79 2D 43 6F ..Proxy-Co

***********: 6E 6E 65 63 74 69 6F 6E 3A 20 4B 65 65 70 2D 41 nnection: Keep-A

***********: 6C 69 76 65 0D 0A 0D 0A FD 00 00 00 00 00 00 00 live............

通过非透明代理上网,上网主机向代理提交连接请求。在请求包里,包含了真正目标的URL,通过代理转交。

ftp代理

代理服务器是明文

..]ZY...]ZI@..E..@.J@...yr.........i.I6u[.....P....l..USER user@202.204.8.10...

代理

代理是明文

..]ZY...]ZI@..E..R..@...y..........J.8.*.n.YJ@P...Z...GET haozs/ HTTP/1.0..Accept: */*..Accept-Language: zh-..Accept-Encoding: gzip, deflate..User-Agent: Mozilla/4.0 (patibleMSIE 5.01Windows NT 5.0)..Host: mp3.yzu.edu..Proxy-Connection: Keep-Alive..Pragma: no-cache..Cookie: ASPSESSIONIDQQCDACCS=CLCLPECCDCEKIGEOKFAFNDAG......-.....0......

socks5代理

socks5代理都不是明文,是数据。

202.204.8.10:21

CA CC 08 0A 00 15

如果使用的是域名,就是明文

..]ZY...]ZI@..E..>..@...p.............N.f7%p:.P...........vod.sjtu.edu.....

qq 代理

当qq上线的时候会和腾迅的服务器联系

..]ZY...]ZI@..E....-@...m*...........8]...3.j.P....6..CONNECT 218.18.95.165:443 HTTP/1.1..Accept: */*..Content-Type: text/..Proxy-Connection: Keep-Alive..Content-length: 0................

qq socks5代理

当qq使用socks5代理的时候,不是明文,是数据

CA 60 AA A5

202.96.170.165:8000

(4) VLAN工作原理的研究

VLAN(Virtual Local Area Neork)就是虚拟局域网的意思。VLAN可以不考虑用户的物理位置,而根据功能、应用等因素将用户从逻辑上划分为一个个功能相对独立的工作组,每个用户主机都连接在一个支持VLAN的交换机端口上并属于一个VLAN。同一个VLAN中的成员都共享广播,形成一个广播域,而不同VLAN之间广播信息是相互隔离的。这样,将整个网络分割成多个不同的广播域(VLAN)。一般来说,如果一个VLAN里面的工作站发送一个广播,那么这个VLAN里面所有的工作站都接收到这个广播,但是交换机不会将广播发送至其他VLAN上的任何一个端口。如果要将广播发送到其它的VLAN端口,就要用到三层交换机。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12450420.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存