public class NetworkInterfaceUtil { private static ListgetInterfaces() throws SocketException { return Collections.list(NetworkInterface.getNetworkInterfaces()); } private static List getNonLoopBackInterfaces() throws SocketException { return getInterfaces().stream() .filter(i -> Unchecked.supplier(() -> !i.isLoopback()).get()) .collect(toList()); } public static List getIp4Addresses() throws SocketException { final List is = getNonLoopBackInterfaces(); return is.stream().flatMap(i -> { final Enumeration addresses = i.getInetAddresses(); final Builder builder = Stream.builder(); while (addresses.hasMoreElements()) { final InetAddress ip = addresses.nextElement(); if (!ip.isLoopbackAddress()) { if (ip.getHostAddress().equalsIgnoreCase("127.0.0.1")) { continue; } if (ip instanceof Inet6Address) { continue; } if (ip instanceof Inet4Address) { builder.add(ip.getHostAddress()); } } } return builder.build(); }).collect(toList()); } }
write on 2017-1-4
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/66434.html
摘要:但是在通過(guò)了,等反向代理軟件就不能獲取到客戶端的真實(shí)地址了。下面是一個(gè)參考獲取客戶端地址的方法如果使用的是連接池,可以參考使用方法,但這個(gè)是經(jīng)過(guò)多級(jí)代理的地址,需要自己處理下獲取第一個(gè)。 showImg(https://segmentfault.com/img/remote/1460000015379119); 在JSP里,獲取客戶端的IP地址的方法是:request.getRemot...
摘要:前言今天,我將梳理在網(wǎng)絡(luò)編程中很重要的一個(gè)類以及其相關(guān)的類。這類主機(jī)通常不需要外部互聯(lián)網(wǎng)服務(wù),僅有主機(jī)間相互通訊的需求??梢酝ㄟ^(guò)該接口獲取所有本地地址,并根據(jù)這些地址創(chuàng)建。在這里我們使用阻塞隊(duì)列實(shí)現(xiàn)主線程和打印線程之間的通信。 前言 今天,我將梳理在Java網(wǎng)絡(luò)編程中很重要的一個(gè)類InetAddress以及其相關(guān)的類NetworkInterface。在這篇文章中將會(huì)涉及: InetA...
摘要:網(wǎng)絡(luò)層主要將從下層接收到的數(shù)據(jù)進(jìn)行地址例的封裝與解封裝。會(huì)話層通過(guò)傳輸層端口號(hào)傳輸端口與接收端口建立數(shù)據(jù)傳輸?shù)耐贰? 第六階段 網(wǎng)絡(luò)編程 每一臺(tái)計(jì)算機(jī)通過(guò)網(wǎng)絡(luò)連接起來(lái),達(dá)到了數(shù)據(jù)互動(dòng)的效果,而網(wǎng)絡(luò)編程所解決的問(wèn)題就是如何讓程序與程序之間實(shí)現(xiàn)數(shù)據(jù)的通訊與互動(dòng)在嗎?你是GG還是MM? (一) 網(wǎng)絡(luò)模型概述 (1) 兩大模型 網(wǎng)絡(luò)模型一般是指: OSI(Open System Inter...
摘要:應(yīng)用層主要負(fù)責(zé)應(yīng)用程序的協(xié)議,例如協(xié)議協(xié)議等。在計(jì)算機(jī)中,不同的應(yīng)用程序是通過(guò)端口號(hào)區(qū)分的。區(qū)別在于,中只有發(fā)送端和接收端,不區(qū)分客戶端與服務(wù)器端,計(jì)算機(jī)之間可以任意地發(fā)送數(shù)據(jù)。 01網(wǎng)絡(luò)模型 *A:網(wǎng)絡(luò)模型 TCP/IP協(xié)議中的四層分別是應(yīng)用層、傳輸層、網(wǎng)絡(luò)層和鏈路層,每層分別負(fù)責(zé)不同的通信功能,接下來(lái)針對(duì)這四層進(jìn)行詳細(xì)地講解。 鏈路層:鏈路層是用于定義物理傳輸通道,通常是對(duì)...
摘要:三端口與套接字端口指一臺(tái)計(jì)算機(jī)只有單一的連接到網(wǎng)絡(luò)的物理連接,所以的數(shù)據(jù)都通過(guò)此連接對(duì)內(nèi)對(duì)外送達(dá)特定的計(jì)算機(jī),這就是端口。三程序設(shè)計(jì)由上面可知基于的信息傳遞速度更快。接收數(shù)據(jù)包使用創(chuàng)建數(shù)據(jù)包套接字,綁定指定端口。 服務(wù)器 網(wǎng)絡(luò) 客戶機(jī) 第一部分 一.局域網(wǎng)與因特網(wǎng) 服務(wù)器是指提供信息的計(jì)算機(jī)或程序,...
閱讀 1887·2021-09-28 09:36
閱讀 2440·2021-09-08 09:35
閱讀 3075·2019-08-30 15:53
閱讀 1563·2019-08-30 14:08
閱讀 676·2019-08-29 18:40
閱讀 2855·2019-08-29 13:57
閱讀 2715·2019-08-29 13:55
閱讀 693·2019-08-26 13:45