64.【网络编程】(一)

简介: 64.【网络编程】

一、基础知识

1.什么是计算机网络?

1.定义:
计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备
,通过通信线路连接起来,在网络操作系统,网络管理软件以及通信协议的管理和
协调下,(实现资源共享和信息传递的计算机系统).

2.网络编程的目的?

1.传递信息
2.数据交换
3.通信

3.如何准确的定位网络上的一台主机?

ping 域名

1.如何准确的定位网络上的一台主机
(1).本地Ipv4 (cmd >  ipconfig)
(2).端口号
(3).计算机上的某个资源
2.定位了网络上的一台主机,如何传输数据?
(1).javaweb 网页编程  (架构 B/S  >浏览器)
(2).TCP/IP  网络编程   (架构 C/S  >客户端(QQ软件))

4.网络通信的要素

1.如何使新网络的通信
(1).通信双方的地址:  ip 与  端口号
(2).网络通信的协议:  http,ftp,tcp,udp... 
TCP/IP参考模型

5.OSI七层参考模型

重点学习的是 IP .UDP .TCP

应用层: 比如QQ等,应用

传输层: 比如:通信

网络层: 比如 :封包

数据链路层: 比如:具体传输

二、IP详解

1.IP详解

(1).IP的用处:
唯一定位一台网络上的计算机
(2).本机IP(localgost)
127.0.0.1

(3).IP的分类
1.通过ip的地址进行分类   
 (1).ipv4地址:
     ipv4 127.0.0.1,四个字节组成,每个字节的长度为0~255,一共42亿个,(2011) 
 (2).ipv6地址:
   ipv6           ,128位,8个无符号整数组成
2.通过ip的公网和私网进行分类
(1).公网---互联网
(2).私网---局域网
eg: 192.168.xx.xx 专门给组织内部使用的
(3).ABCD类地址

ABCD类的地址分类: (折半操作)

(4).域名:
1.主要目的:是为了记忆域名

2.Java 获取IP地址

基本思路:
1.InetAddress 没有构造器不能new 只能进行调用
InetAddress.getByName("www.baidu.com");  //获取域名和地址
2.获取域名(网站)的ip地址
(1).InetAddress.getByName(域名);
3.获取本机的ip地址
(1).InetAddress.getByName("127.0.0.1");
(2).InetAdress.getLocalHost();
package com.Kuangstudy.Net;
import javax.swing.*;
import java.net.InetAddress;
import java.net.UnknownHostException;
public class Test {
    public static void main(String[] args) {
        //因为inetAddress是没有构造器的,所以new不了
        try {
            //获得百度的IP地址。
            InetAddress byName_address1 = InetAddress.getByName("www.baidu.com");
            System.out.println("百度 "+byName_address1);
            //
            System.out.println(byName_address1.getAddress());
            //获得规范的名字 也就是ip
            System.out.println(byName_address1.getCanonicalHostName());
            //获得主机的名字 还是ip
            System.out.println(byName_address1.getHostAddress());
            //获得域名
            System.out.println(byName_address1.getHostName());
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    }
}


相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
4月前
|
消息中间件 Kubernetes 网络协议
网络编程一些问题总结
网络编程一些问题总结
|
2月前
|
域名解析 网络协议 安全
网络编程
网络编程
|
4月前
|
Linux
网络编程之 socket编程
网络编程之 socket编程
29 0
|
7月前
|
网络协议 关系型数据库 MySQL
网络编程初识
网络编程初识
31 0
|
8月前
|
Java C++
4. 网络编程
4. 网络编程
33 0
|
8月前
|
应用服务中间件
64.【网络编程】(三)
64.【网络编程】
24 0
|
8月前
64.【网络编程】(四)
64.【网络编程】
57 0
|
8月前
|
网络协议
64.【网络编程】(二)
64.【网络编程】
22 0
|
9月前
|
网络协议 Oracle 安全
网络编程详细讲解
网络编程详细讲解
54 0