日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java NIO無(wú)法綁定指定IP和端口解決方案

瀏覽:25日期:2022-08-22 11:49:47

在使用SNMP4J時(shí),我想指定創(chuàng)建的客戶端使用的本地IP和端口,因?yàn)樵赟ocket時(shí)這是可以的,但是發(fā)現(xiàn)無(wú)法實(shí)現(xiàn)

因?yàn)镾NMP4J底層的通信是使用NIO實(shí)現(xiàn)的,而NIO編程時(shí)貌似就不能顯示的指定

例如在SNMP4J的DefaultTcpTransportMapping類里面,當(dāng)作為客戶端需要發(fā)送消息時(shí),程序首先判斷是否創(chuàng)建了這個(gè)客戶端,如果沒(méi)有在創(chuàng)建時(shí)看到這樣的代碼:

SocketChannel sc = null;try {sc = SocketChannel.open();sc.configureBlocking(false);sc.connect(new InetSocketAddress(((TcpAddress) address).getInetAddress(),((TcpAddress) address).getPort()));s = sc.socket();entry = new SocketEntry((TcpAddress) address, s);entry.addMessage(message);sockets.put(address, entry);synchronized (pending) {pending.add(entry);}selector.wakeup();logger.debug('Trying to connect to ' + address);} catch (IOException iox) {logger.error(iox);throw iox;}

即使在SocketChannel中,他的Socket變量定義也是不能修改的:

/** * Retrieves a socket associated with this channel. * * <p> The returned object will not declare any public methods that are not * declared in the {@link java.net.Socket} class. </p> * * @return A socket associated with this channel */public abstract Socket socket();

所以我直接判定Java NIO中,客戶端是無(wú)法指定自己的IP和端口的!

那么有人在想為什么需要指定自己的IP和端口?具體需求我就不再說(shuō)了,在計(jì)算機(jī)上雖然只有一塊網(wǎng)卡,但是我們可以使用兼容的IP:

Java NIO無(wú)法綁定指定IP和端口解決方案

由于我的服務(wù)端程序以客戶端IP來(lái)判斷信息來(lái)源,現(xiàn)在我需要在我的電腦上做測(cè)試程序,需要同時(shí)邦定兩個(gè)IP地址進(jìn)行消息發(fā)送。

此時(shí)我就可以在高級(jí)設(shè)置里面設(shè)置兼容IP就可以,但是現(xiàn)在程序卻無(wú)法選擇。

在Socket里面可以這樣寫(xiě):

package com.xidian.nms.socket;import java.net.InetSocketAddress;import java.net.ServerSocket;import java.net.Socket;import java.net.SocketAddress;public class SocketServer {public static void main(String[] args) throws Exception {// 創(chuàng)建非邦定式連接對(duì)象ServerSocket ss = new ServerSocket();// 需要邦定的本地IP和地址SocketAddress address = new InetSocketAddress('192.168.0.109', 2330);// 將連接對(duì)象邦定到地址ss.bind(address);System.out.println('服務(wù)已經(jīng)啟動(dòng)');while (true) {// 接收請(qǐng)求Socket socketClient = ss.accept();// 客戶端IPString ip = socketClient.getInetAddress().getHostAddress();// 客戶端端口int port = socketClient.getPort();System.out.println('服務(wù)端收到請(qǐng)求:' + ip + '/' + port);}}}

服務(wù)端很簡(jiǎn)單,你可以一行代碼搞定,也可以顯示的指定IP、端口,然后進(jìn)行顯示的服務(wù)連接操作:

package com.xidian.nms.socket;import java.net.InetAddress;import java.net.InetSocketAddress;import java.net.Socket;import java.net.SocketAddress;public class SocketClient {public static void main(String[] args) throws Exception{Socket socket = new Socket();// 需要邦定的本地IPInetAddress iaddThis = InetAddress.getByName('192.168.1.109');// 需要邦定的本地地址SocketAddress saddThis = new InetSocketAddress(iaddThis,2331);socket.bind(saddThis);// 連接的遠(yuǎn)程服務(wù)地址InetAddress iaddRe = InetAddress.getByName('192.168.0.109');SocketAddress saddRe = new InetSocketAddress(iaddRe,2330);// 顯示連接socket.connect(saddRe);//Socket socket = new Socket('192.168.0.109', 2330);}}

注釋掉的內(nèi)容是一行搞定連接的方式。

經(jīng)過(guò)測(cè)試,如果想要修改所邦定的IP和顯示再次進(jìn)行連接操作,需要把設(shè)置NIO同步的代碼放到后面:

try {sc = SocketChannel.open();s = sc.socket();s.bind(new InetSocketAddress('192.168.0.109', 999));s.connect(new InetSocketAddress(((TcpAddress) address).getInetAddress(),((TcpAddress) address).getPort()));sc.configureBlocking(false);entry = new SocketEntry((TcpAddress) address, s);entry.addMessage(message);sockets.put(address, entry);synchronized (pending) {pending.add(entry);}selector.wakeup();logger.debug('Trying to connect to ' + address);} catch (IOException iox) {logger.error(iox);throw iox;}

否則會(huì)報(bào)錯(cuò):

Exception in thread 'main' java.nio.channels.IllegalBlockingModeExceptionat sun.nio.ch.SocketAdaptor.connect(SocketAdaptor.java:76)at sun.nio.ch.SocketAdaptor.connect(SocketAdaptor.java:65)at org.snmp4j.transport.DefaultTcpTransportMapping$ServerThread.sendMessage(DefaultTcpTransportMapping.java:503)at org.snmp4j.transport.DefaultTcpTransportMapping.sendMessage(DefaultTcpTransportMapping.java:183)at org.snmp4j.MessageDispatcherImpl.sendMessage(MessageDispatcherImpl.java:214)at org.snmp4j.MessageDispatcherImpl.sendPdu(MessageDispatcherImpl.java:475)at org.snmp4j.Snmp.sendMessage(Snmp.java:1110)at org.snmp4j.Snmp.send(Snmp.java:914)at org.snmp4j.Snmp.send(Snmp.java:894)at org.snmp4j.Snmp.send(Snmp.java:859)at com.xidian.nms.snmp.Snmp4jGet.sendPDU(Snmp4jGet.java:59)at com.xidian.nms.snmp.Snmp4jGet.main(Snmp4jGet.java:38)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
99免费精品| 亚洲免费播放| 亚洲欧美日本国产| 亚洲人成毛片在线播放女女| 99国产精品久久久久久久| 黄色日韩在线| 男女男精品网站| 欧美激情综合| 老牛国内精品亚洲成av人片 | 亚洲理论在线| 欧美影院精品| 国产福利电影在线播放| 中文字幕在线免费观看视频| 成人污污视频| 免费观看不卡av| 亚洲女人av| 国产精品白丝av嫩草影院| 成人一区而且| 首页国产欧美久久| 欧美精品中文字幕亚洲专区| 日本成人一区二区| 日韩理论视频| 蜜桃av一区二区在线观看| 欧美日韩一区二区三区四区在线观看 | 夜久久久久久| 欧美三区不卡| 韩国久久久久久| 亚洲精品高潮| 久久天堂av| 欧美久久一区二区三区| 成人福利视频| 亚洲精品黄色| 欧美激情国产在线| 视频一区日韩精品| 欧美综合国产| 成人在线免费观看91| 一级欧美视频| 7777精品| 国产aa精品| 男人天堂欧美日韩| 国产精品99久久精品| 欧美精品一卡| 亲子伦视频一区二区三区| 久久亚洲视频| 欧美日韩国产v| 日本a级不卡| 欧美日韩一区二区综合| 日韩欧美激情电影| 激情视频网站在线播放色| 99久久99久久精品国产片果冰| 国户精品久久久久久久久久久不卡 | 日韩中文欧美| 国产亚洲一区二区三区啪| 精品视频国内| 亚洲一级特黄| 久久一二三区| 精品一区二区三区中文字幕在线| 91九色综合| 在线一区av| 亚洲有吗中文字幕| 亚洲精品乱码久久久久久蜜桃麻豆| 久久精品99国产国产精| 久久精品国语| 国产精品一区二区av交换| 日韩激情一区| 日韩精品欧美大片| 久久三级视频| 国产精品久久久久久模特 | 97久久中文字幕| 欧美日韩视频网站| 久久精品亚洲| 欧美日韩一区二区三区四区在线观看| 一级欧洲+日本+国产| 国产欧美一区二区三区精品酒店| 欧美亚洲一区二区三区| 99在线|亚洲一区二区| 日韩欧美视频专区| 国内精品麻豆美女在线播放视频| 欧美亚洲一级| 日韩av一区二区在线影视| 美女久久一区| 国产精品大片免费观看| 日韩国产欧美视频| 日韩欧美激情| 久久国产乱子精品免费女| 日韩毛片一区| 91福利精品在线观看| 久久一级电影| 精品久久免费| 日本视频中文字幕一区二区三区| 久久精品99国产精品日本| 日韩精品亚洲aⅴ在线影院| 视频精品一区| 欧美国产专区| 日本精品黄色| 久久久水蜜桃av免费网站| 日韩高清在线不卡| 国产日韩亚洲欧美精品| 免费日韩成人| 国产成人精品三级高清久久91| 国产成人精品三级高清久久91| 亚洲精品成人图区| 国产农村妇女精品一区二区| av不卡免费看| 日韩avvvv在线播放| 国产一区二区三区黄网站| 日韩久久一区二区三区| 麻豆精品在线观看| 国产videos久久| 国产视频一区免费看| 亚洲免费毛片| 国产极品模特精品一二| 日韩精品看片| 91九色综合| 欧美日韩中文字幕一区二区三区| 中文亚洲欧美| 精品国产不卡| 一区二区精品| а√天堂8资源中文在线| 欧美欧美黄在线二区| av成人国产| 国产成人精品一区二区免费看京| 国产精品美女久久久| 久久亚洲道色| 亚洲区欧美区| 欧美成人久久| 国产美女久久| 亚洲高清毛片| 久久亚洲人体| 国产乱码精品一区二区三区亚洲人 | 国产精品一区二区美女视频免费看| 久久国产精品成人免费观看的软件| 日韩一区二区三区免费视频| 婷婷激情久久| 久久久久久夜| 国产一区二区三区四区| 日本特黄久久久高潮| 亚洲深夜影院| 国产精品高清一区二区| 日韩 欧美一区二区三区| 亚洲免费中文| 激情综合网站| 99久久激情| 激情综合网五月| 91精品电影| 婷婷亚洲五月| 一区免费视频| 中文一区二区| 国产美女一区| 综合欧美精品| 日韩在线成人| 欧美日一区二区在线观看| 欧美三级第一页| 日韩在线观看一区二区| 中文不卡在线| 婷婷成人av| 国产福利一区二区精品秒拍| 国产精品对白| 日韩中文首页| 91久久精品无嫩草影院| 中文在线免费视频| 亚洲综合国产| 日韩精品视频中文字幕| 在线一区视频| 日本视频一区二区| 久久国产人妖系列| 成人高清一区| 欧美在线资源| 人在线成免费视频| 午夜国产精品视频| 日韩精品一区二区三区免费视频| 国产毛片久久久| 日韩欧美网址| 日本不卡高清| 久久久成人网| 国产精品久久久久久模特 | 成人在线视频区| 水野朝阳av一区二区三区| 亚洲涩涩av| 99精品电影| 麻豆视频在线看| 免费亚洲婷婷| 国产精品一页| 18国产精品| 亚洲深深色噜噜狠狠爱网站| 精品国产乱码久久久| 国产免费av国片精品草莓男男| 日韩欧美一区二区三区在线观看 | 涩涩av在线| 欧美粗暴jizz性欧美20| 亚洲一区久久| 亚洲精品大片| 国产精品一页| 韩日一区二区| 亚洲h色精品| 在线精品福利| 国产福利一区二区精品秒拍| 日韩1区2区日韩1区2区| 国产中文在线播放| av亚洲免费|