安卓如何打开小于1024端口号的Socket 列举一些端口号小于1024的应用程序.
\u5982\u4f55\u7ed1\u5b9a\u5230Android\u7684\u4e00\u4e2a\u7aef\u53e3\u5c0f\u4e8e1024Android\u5e95\u5c42\u4f7f\u7528Linux\u5b9e\u73b0\uff0clinux\u4e2d\u89c4\u5b9a\uff0c0-1024\u79f0\u4e4b\u4e3a\u7279\u6743\u7aef\u53e3\uff0c\u53ea\u6709root\u7528\u6237\u624d\u80fd\u591f\u7ed1\u5b9a\uff0c\u5982\u679c\u8981\u7ed1\u5b9a\u8fd9\u4e2a\u8303\u56f4\u7684\u7aef\u53e3\u53f7\uff0c\u53ef\u4ee5\u6709\u4e24\u79cd\u9009\u62e9\uff1a
\u5207\u6362\u5230root\u7528\u6237\u8fd0\u884c\u8be5\u7a0b\u5e8f\uff08\u7b80\u5355\uff0c\u4f46\u6709\u98ce\u9669\uff09
\u6539\u53d8\u7a0b\u5e8f\u7684\u5c5e\u4e3b\u4e3aroot\uff0c\u7136\u540e\u6dfb\u52a0\u7528\u6237\u8bbe\u7f6e\u4f4d(set-user-bit)\uff0c\u7a0b\u5e8f\u4e2d\u7ed1\u5b9a\u7aef\u53e3\u4e4b\u540e\uff0c\u9a6c\u4e0a\u4f7f\u7528seteuid()\u7c7b\u4f3c\u7684\u51fd\u6570\u6539\u53d8\u6709\u6548\u8eab\u4efd\u4e3a\u666e\u901a\u7528\u6237\u3002
chown -R root:root app
chmod 4755 app
1 tcpmux TCP \u7aef\u53e3\u670d\u52a1\u591a\u8def\u590d\u7528 5 rje \u8fdc\u7a0b\u4f5c\u4e1a\u5165\u53e3 7 echo Echo \u670d\u52a1 9 discard \u7528\u4e8e\u8fde\u63a5\u6d4b\u8bd5\u7684\u7a7a\u670d\u52a1 11 systat \u7528\u4e8e\u5217\u4e3e\u8fde\u63a5\u4e86\u7684\u7aef\u53e3\u7684\u7cfb\u7edf\u72b6\u6001 13 daytime \u7ed9\u8bf7\u6c42\u4e3b\u673a\u53d1\u9001\u65e5\u671f\u548c\u65f6\u95f4 17 qotd \u7ed9\u8fde\u63a5\u4e86\u7684\u4e3b\u673a\u53d1\u9001\u6bcf\u65e5\u683c\u8a00 18 msp \u6d88\u606f\u53d1\u9001\u534f\u8bae 19 chargen \u5b57\u7b26\u751f\u6210\u670d\u52a1\uff1b\u53d1\u9001\u65e0\u6b62\u5883\u7684\u5b57\u7b26\u6d41 20 ftp-data FTP \u6570\u636e\u7aef\u53e3 21 ftp \u6587\u4ef6\u4f20\u8f93\u534f\u8bae\uff08FTP\uff09\u7aef\u53e3\uff1b\u6709\u65f6\u88ab\u6587\u4ef6\u670d\u52a1\u534f\u8bae\uff08FSP\uff09\u4f7f\u7528 22 ssh \u5b89\u5168 Shell\uff08SSH\uff09\u670d\u52a1 23 telnet Telnet \u670d\u52a1 25 smtp \u7b80\u5355\u90ae\u4ef6\u4f20\u8f93\u534f\u8bae\uff08SMTP\uff09 37 time \u65f6\u95f4\u534f\u8bae 39 rlp \u8d44
Android底层使用Linux实现,linux中规定,0-1024称之为特权端口,只有root用户才能够绑定,如果要绑定这个范围的端口号,可以有两种选择:
切换到root用户运行该程序(简单,但有风险)
改变程序的属主为root,然后添加用户设置位(set-user-bit),程序中绑定端口之后,马上使用seteuid()类似的函数改变有效身份为普通用户。
chown -R root:root app
chmod 4755 app
在程序中bind完毕,马上调用seteuid()切换到普通用户,但是seteuid是C函数,java的我就不清楚了。
打开小于1024端口的Socket代码如下:
Socket socket=new Socket("ip",1000); 注: ip为真实IP地址,端口为1000。
网络上的两个程序通过一个双向的通讯连接实现数据的交换,这个双向链路的一端称为一个Socket。Socket通常用来实现客户方和服务方的连接。Socket是TCP/IP协议的一个十分流行的编程界面,一个Socket由一个IP地址和一个端口号唯一确定。
Server端Listen某个端口是否有连接请求,Client端向Server 端发出Connect(连接)请求,Server端向Client端发回Accept(接受)消息。一个连接就建立起来了。Server端和Client 端都可以通过Send,Write等方法与对方通信。
一个功能齐全的Socket,都要包含以下基本结构,其工作过程包含以下四个基本的步骤:
创建Socket;
打开连接到Socket的输入/出流;
按照一定的协议对Socket进行读/写操作;
关闭Socket;
绛旓細鎬庝箞鏇存敼OHS绔彛涓80 涓鑸湪瀹炴柦椤圭洰鏃讹紝瀹㈡埛閮藉笇鏈涘煙鍚嶅拰鍦板潃绠鍗曟槑浜嗐備絾鏄疧HS涓轰簡瀹夊叏璧疯鏄笉鍏佽浣跨敤绔彛鍙峰皬浜1024,灏忎簬1024绔彛鍙鏄睘浜巖oot,甯歌鐨凮HS閮芥槸鏈夎嚜宸辩殑瀹夎鐢ㄦ埛(Oracle)銆傚洜姝ゅ鏋滄兂瑕佷娇鐢ㄥ皬浜1024鐨勭鍙o紝闇瑕佷慨鏀.apachectl鐨勬帶鍒舵潈銆傛楠:1.鍏抽棴OHS 2.閲嶆柊璁剧疆鐩戝惉绔彛 3.鏀瑰彉 . ...
绛旓細9銆佸悕瀛楁渶濂藉啓涓婃墍鎵撳紑绔彛鐨勫悕绉帮紝鏂逛究涓嬫瀵绘壘锛岀偣鍑诲畬鎴 10銆佽繖鏃跺欙紝鍏ョ珯瑙勫垯閲屽凡缁忔湁鏄剧ず浜嗭紝璇存槑宸叉垚鍔熴傞棶棰樺叓锛歔缃戠粶閰嶇疆] 鎬庝箞鏌ョ湅鑷繁鐨绔彛鍙 璁剧疆浠g悊鏈嶅姟鍣ㄧ殑鏃跺欓渶瑕佸~鍐欑鍙o紝杩欎釜绔彛鍙峰湪鏈嶅姟鍣ㄧ鏄嚜鐢卞~鍐欑殑锛屼竴鑸ぇ浜1024锛灏忎簬65535灏卞彲浠ヤ簡銆傚鎴风鍦ㄤ娇鐢ㄨ繖涓唬鐞嗘湇鍔″櫒涓婄綉鐨勬椂鍊...
绛旓細Web鏈嶅姟鍣ㄧ殑榛樿绔彛鍙鏄80,濡傛灉浣犱慨鏀逛负88鍒欏湪璁块棶浣犵殑Web鏈嶅姟鍣ㄧ殑鏃跺欒浣跨敤鍩熷悕:88鏉ヨ闂傝屼笖瀵逛簬灏忎簬1024鐨勭鍙e彿閮芥槸鐭ュ悕绔彛鍙,鍥犳涓嶅缓璁綘浣跨敤88杩欎釜绔彛鍙,寤鸿鐢8080杩欎釜闈炵煡鍚嶇鍙e彿; 瀵逛簬淇敼绔彛鍙蜂笉鍚岀殑绯荤粺鏈変笉鍚岀殑淇敼鏂瑰紡,姣斿鍦ㄥ井杞殑IIS涓槸鍦ㄧ綉绔欑殑涓鑸睘鎬т腑鐨勭鍙e彿鏉ヤ慨鏀广傚浜嶭inux鏄湪...
绛旓細绔彛鏄16浣嶇殑, 鑷劧鏈2鐨16娆℃柟涓鍙.鍓嶉潰1024涓鍙e睘浜嶶NIX淇濈暀绔彛鍙, 鐢ㄦ潵璺戞爣鍑嗘湇鍔$殑.姣忎釜绔彛, 鏃㈠彲浠ョ敤UDP, 涔熷彲浠ョ敤TCP銆傚姩鎵嬪幓缂栦竴涓婾DP浼犳暟鎹拰TCP浼犳暟鎹殑绋嬪簭灏变細鏄庣櫧
绛旓細濡備綍鍏抽棴涓寮鍚鍙? 绔彛姒傚康銆佷粈涔堟槸绔彛 鍦ㄧ綉缁滄妧鏈腑,绔彛(Port)澶ц嚧鏈変袱绉嶆剰鎬: 涓鏄墿鐞嗘剰涔変笂鐨勭鍙,姣斿,ADSL Modem銆侀泦绾垮櫒銆佷氦鎹㈡満銆佽矾鐢卞櫒鐢ㄤ簬杩炴帴鍏朵粬缃戠粶璁惧鐨勬帴鍙,濡俁J-45绔彛銆丼C绔彛绛夌瓑銆 浜屾槸閫昏緫鎰忎箟涓婄殑绔彛,涓鑸槸鎸嘥CP/IP鍗忚涓殑绔彛,绔彛鍙鐨勮寖鍥翠粠0鍒65535,姣斿鐢ㄤ簬娴忚缃戦〉鏈嶅姟鐨80绔...
绛旓細鎵撳紑璁剧疆鎴栭厤缃枃浠讹紝鏌ユ壘鍏充簬绔彛鐨勮缃傞氬父锛绔彛鍙浼氫互鏁板瓧褰㈠紡琛ㄧず锛屽苟鍦ㄨ缃垨閰嶇疆鏂囦欢涓槑纭寚瀹氥備慨鏀圭鍙e彿涓烘偍甯屾湜浣跨敤鐨勬柊绔彛鍙枫傜‘淇濇柊绔彛鍙锋槸鏈鍏朵粬鏈嶅姟鎴栧簲鐢ㄧ▼搴忓崰鐢ㄧ殑鏈夋晥绔彛鍙凤紝渚嬪 1024 鍒 65535 涔嬮棿鐨勬暟瀛椼備繚瀛樿缃垨閰嶇疆鏂囦欢锛屽叧闂蒋浠躲傚湪杞欢閲嶆柊鍚姩鍚庯紝瀹冨簲璇ヤ娇鐢ㄦ偍鍒氬垰...
绛旓細浠讳綍TCP/IP瀹炵幇鎵鎻愪緵鐨勬湇鍔¢兘鐢1---1023涔嬮棿鐨绔彛鍙锛屾槸鐢盜CANN鏉ョ鐞嗙殑锛涳紙2锛夊鎴风鍙渶淇濊瘉璇ョ鍙e彿鍦ㄦ湰鏈轰笂鏄儫涓鐨勫氨鍙互浜嗐傚鎴绔彛鍙鍥犲瓨鍦ㄦ椂闂村緢鐭殏鍙堢О涓存椂绔彛鍙凤紱锛3锛夊ぇ澶氭暟TCP/IP瀹炵幇缁欎复鏃剁鍙e彿鍒嗛厤1024---5000涔嬮棿鐨勭鍙e彿銆傚ぇ浜5000鐨勭鍙e彿鏄负鍏朵粬鏈嶅姟鍣ㄩ鐣欑殑銆
绛旓細鏈嶅姟鍣ㄧ杞欢鐨绔彛鍙锛屼竴鑸彲浠ヨ嚜瀹氫箟锛屽彧瑕佸浜1024 -- 65535 涔嬮棿锛屼笉閲嶅灏辫銆傛瘡涓蒋浠惰缃鍙e彿鐨勬柟娉曢兘涓嶄竴鏍枫備竴鑸兘鍦ㄢ滆缃濈晫闈傚鎴风鐨勮蒋浠跺鏋滆璁剧疆绔彛鍙风殑璇濓紝灏卞繀椤昏鍜屾湇鍔″櫒绔殑涓鏍枫傞棶棰樺叓锛氭庢牱璁剧疆璺敱鍣ㄧ鍙 鐧婚檰鍒拌矾鐢卞櫒绠$悊鐣岄潰銆鎵撳紑ie鎴栫涓夋柟娴忚鍣紝鐒跺悗鍦ㄥ湴鍧鏍...
绛旓細绔彛鏄潬绋嬪簭鎴栬呮湇鍔鎵撳紑鐨勶紝姣斿浣犺浜嗕竴涓▼搴忥紝杩欎釜绋嬪簭鏄彲浠ヨ仈缃戠殑锛屽湪鑱旂綉鏃跺氨浼氭墦寮涓涓鍙o紝涓庡绔殑涓涓鍙g浉杩烇紝鐒跺悗浼犺緭鏁版嵁
绛旓細浣跨敤瑙勫垯锛氾紙1锛绔彛鍙峰皬浜256鐨勫畾涔変负甯哥敤绔彛锛屾湇鍔″櫒涓鑸兘鏄氳繃甯哥敤绔彛鍙锋潵璇嗗埆鐨勩備换浣昑CP/IP瀹炵幇鎵鎻愪緵鐨勬湇鍔¢兘鐢1---1023涔嬮棿鐨勭鍙e彿锛屾槸鐢盜CANN鏉ョ鐞嗙殑锛涚鍙e彿浠1024---49151鏄娉ㄥ唽鐨勭鍙o紝涔熸垚涓衡滅敤鎴风鍙b濓紝琚獻ANA鎸囧畾涓虹壒娈婃湇鍔′娇鐢ㄣ傦紙2锛夊鎴风鍙渶淇濊瘉璇ョ鍙e彿鍦ㄦ湰鏈轰笂鏄敮涓...