Java网络编程:IP地址和端口号

1)IP地址

用来标志网络中的一个通信实体的地址。通信实体可以是计算机,路由器等。

2)IP地址分类

IPV4:32位地址,以点分十进制表示,如192.168.0.1

IPV6:128位(16个字节)写成8个16位的无符号整数,每个整数用四个十六进制位表示,数之间用冒号(:)分开,如:3ffe:3201:1401:1280:c8ff:fe4d:db39:1984

3)特殊的IP地址

127.0.0.1 本机地址

192.168.0.0--192.168.255.255私有地址,属于非注册地址,专门为组织机构内部使用。

4)端口:port

IP地址用来标志一台计算机,但是一台计算机上可能提供多种应用程序,使用端口来区分这些应用程序。 端口是虚拟的概念,并不是说在主机上真的有若干个端口。通过端口,可以在一个主机上运行多个网络应用程序。 端口范围0---65535,16位整数

5)端口分类

公认端口 0—1023 比如80端口分配给WWW,21端口分配给FTP,22端口分配给SSH,23端口分配给telnet,25端口分配给smtp

注册端口 1024—49151 分配给用户进程或应用程序

动态/私有端口 49152--65535

6)理解IP和端口的关系

IP地址好比每个人的地址(门牌号),端口好比是房间号。必须同时指定IP地址和端口号才能够正确的发送数据

IP地址好比为电话号码,而端口号就好比为分机号。

原文地址:https://www.cnblogs.com/Yanss/p/11712185.html

时间: 2024-08-01 09:15:37

Java网络编程:IP地址和端口号的相关文章

mac地址、IP地址和端口号

看了很多遍,才整理出来我对整个通信过程的理解,大致如下,后期会不断学习补充更正: 在利用TCP/IP协议族进行通信的时候,有三个比较关键的确认身份的信息:mac地址.IP地址和端口号. mac地址是在数据链路层包裹在以太网头部中的,它主要用来识别同一个链路中的不同计算机.Mac地址即网卡号,每块网卡出厂的时候,都有一个全世界独一无二的 MAC 地址,长度是 48 个二进制位,通常用 12 个十六进制数表示. IP地址是在网络层的IP头部里,用于识别网络中互联的主机和路由器,其实主要是确认子网,通

从sockaddr中取得Ip地址和端口号

在socket编程中,服务器端accept()等待一个客户端的连接,当连接成功后,accept拷贝客户端的地址信息到sin_addr里面,我们如何从sin_addr取得此客户端的Ip地址和端口号呢? 实际上,当sockaddr_in.sin_family = AF_INET时,sockaddr = sockaddr_in. 据此,我们可以做一下转换,就可以利用 inet_ntoa() 来得到ip地址和端口号了: int new_fd = accept(sock, &clientAddr, &

Java网络编程【Socket服务端和客户端】

Socket 编程大家都不陌生,Java 学习中必学的部分,也是 Java网络编程核心内容之一.Java 网络编程又包括 TCP.UDP,URL 等模块.TCP 对应 Socket模块,UDP 对应 DatagramPacket 模块.URL 对应 URL 模块.其中 TCP 和 UDP 是网络传输协议,TCP 是数据流传输协议,UDP 是数据包传输协议.两者之间的异同就不在这里说了,推荐一本入门书籍 <TCPIP入门经典>.我们开始 Socket 服务端和客户端编程吧. 一.Socket 服

Java网络编程(客户端和服务端原理)

浏览器端输入自己主机的IP地址+端口号(8888),会看到服务器返回的数据内容,Eclipse控制台会打印显示收到的信息, 通过我们自定义的服务器,可以看到浏览器端向服务器发送的请求信息的格式是: 请求行....... GET / HTTP/1.1  请求方式  /myweb/1.html  请求的资源路径   http协议版本.请求消息头 . 属性名:属性值 eclipse的控制台的输出: 192.168.2.103....connected//这个是我自己程序的输出GET / HTTP/1.

链接、ip地址及端口号

# encoding=utf-8 #python 2.7.10 #xiaodeng #链接(即报文如何通过传输控制协议链接从一个地方搬移到另外一个地方) #HTTP权威指南 13页 #TCP/IP #http是应用层协议. #http无需操作网络通信的具体细节,他把联网的细节都交给了通用.可靠的因特网传输协议TCP/IP. #TCP提供了: #无差错的数据传输 #按序传输(数据总是按照发送的顺序达到) #未分段的数据流(可以在任意时刻以任意尺寸将数据发送出去) #因特网本身就是基于tcp/ip协

网络编程三要素之端口号

每个程序在设备上的唯一标识 每个网络程序都需要绑定一个端口号,传输数据的时候除了确定发到哪台机器上,还要明确发到哪个程序. 端口号范围从0-65535 编写网络应用就需要绑定一个端口号,尽量使用1024以上的,1024以下的基本上都被系统程序占用了. 常用端口 mysql: 3306 oracle: 1521 web: 80 tomcat: 8080 QQ: 4000 feiQ: 2425

设置三思LED的IP地址跟端口号

出厂设置是:202.11.11.01 初始端口号是:2929 设置虚拟机的ip跟LED的ip在一个网段上,在虚拟机上telnet命令,登陆到LED上面. 在/etc/init.d/rcS文件中, #!/bin/sh mount -t proc /proc /proc mount -t sysfs /sys /sys mount -t devpts devpts /dev/pts ifconfig eth0 hw ether 00:15:07:21:00:72 ifconfig eth0 10.0

网络编程 IP地址

import java.net.*; public class IPDemo { public static void main(String[] args) throws Exception { InetAddress i=InetAddress.getLocalHost(); /*                            * 输出本机的主机名和IP地址                            */ //System.out.println(i.toString()

Linux网络编程--IP地址与域名解析(DNS)

在日常生活中,人们往往知道主机的域名而不知道主机的IP地址,而socket的API均基于IP地址,所以需要使用DNS域名解析服务器进行解析. 那么首先简单介绍一下DNS的原理,DNS服务器系统是按树形的结构构造,顶级域名服务器下分多个二级域名服务器,二级域名服务器下面又分多个下级域名服务器,每个服务器都下辖了一些主机,如图所示: 那么一个主机是如何查询一个域名的IP地址呢?首先需要想本地的域名服务器查询,如果没有就向上级域名服务查询,如果二级的也查不到就会向顶级域名服务器查询,如果顶级的也查不到