前言:

本文内容:什么是计算机网络、网络通信的两个要素、IP地址

推荐免费Java网络编程实战讲解视频:【狂神说Java】网络编程实战讲解_哔哩哔哩_bilibili

什么是计算机网络

  • 概述:

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

  • 网络编程目的:

    无线电台,传播交流信息,数据交换,通信。

  • 达到的效果:

    • 如何准确的定位网络上的一台主机 IP:端口,定位到计算机某个资源。
    • 找到了这个主机,如何传输数据呢?

    Javaweb: 网页编程 B/S

    Java网络编程: TCP/IP C/S

网络通信的两个要素

如何实现网络的通信?

通信双方的地址:

  • IP
  • 端口号

规则:网络通信协议

TCP/IP通信(OSI七层网络模型)

hBX4wd.md.gif

传输层为本课程重点

万物皆对象

IP地址

IP地址(InetAddress)

  • 定位唯一网络上的计算机

  • 127.0.0.1:本机localhost

  • IP地址的分类

    • IPv4/IPv6
      • **IPv4:**127.0.0.1,四个字节组成,0-255,42亿;30亿在北美,亚洲4亿(2001年就用尽)
      • **IPv6:**fe80::10de:752a:458c:7cbd%28,128位,8个无符号整数。
    • 公网(互联网)和私网(局域网)
    • 域名:记忆IP问题
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    package com.jokerdig.netDemo;

    import java.net.InetAddress;
    import java.net.UnknownHostException;

    /**
    * @author Joker大雄
    * @data 2021/9/1 - 22:09
    **/
    //测试ip
    public class Demo1 {
    public static void main(String[] args) {

    try {
    //查询本地地址,127,0.0.1 / localhost/getLocalHost()
    InetAddress byName = InetAddress.getByName("127.0.0.1");
    //查询网络IP地址
    InetAddress byName1 = InetAddress.getByName("www.baidu.com");
    InetAddress byName2 = InetAddress.getByName("www.jokerdig.com");
    //输出
    System.out.println(byName);
    System.out.println(byName1);
    System.out.println(byName2);
    //常用方法
    System.out.println(byName2.getCanonicalHostName());//规范的名字
    System.out.println(byName2.getHostAddress());//ip
    System.out.println(byName2.getHostName());//域名,或自己电脑名
    } catch (UnknownHostException e) {
    e.printStackTrace();
    }

    }
    }