网络编程的基础知识(一):局域网、IP、端口

主要结合所学知识,以个人的理解进行整理,有以下几点:

  • 局域网内通信
    • 交换机
  • 局域网与局域网之间的通信
    • 路由器
      • 网关,路由表
  • IP
    • IP协议
    • 公网IP和内网IP
  • 端口

首先了解两个概念:

  1. MAC地址:相当于人的身份证号,在电脑出厂的时候就附加上了,且不会重复。作为唯一的标识符,不变。
  2. IP地址:相对于人在不同阶段的时候的代号,如学号,工号。是一种临时的标识符,可变。

1、局域网内:(使用到交换机)

多台主机之间形成一个局域网,如在学校的机房中,那么整个教师的电脑就是处在一个局域网中。局域网中主机的通信,是通过交换机来进行的,每台主机将网线都连接至交换机上的接口。交换机--->机房最后面的大设备。

  • 交换机:(只认识Mac地址,不认识IP地址)
    • 广播:将信息发给所有主机设备
    • 组播:将信息发给一部分主机,另外一部分不发送
    • 单播:单独的在2台主机间进行通信,需要知道2台主机的Mac地址

通信过程:a主机(信息、Mac地址)--->交换机(广播、单播、组播)--->b主机(相应)

如a主机需要和局域网下的b主机进行发消息进行通信,那么a主机(发送信息和Mac地址至)--->交换机(以广播的方式)--->所有主机(a、b、c、d...)--->所有主机中,只有b主机会作出响应。b主机如果返回了信息,那么以同样携带(信息和Mac地址)--->至交换机--->a主机,形成通信。而交换机也有相应的缓存机制,如果a、b之间发送过通信,那么下次a、b之间再通信就不需要使用广播的机制,而是可以使用单播的方式进行主机之间的通信。

2、局域网与局域网之间的通信:(使用到路由器)

局域网与局域网之间的通信,就需要使用到路由器了

  • 路由器:(认识IP地址)
    • 网关:每个局域网连接到路由器会有一个共用的网关,即局域网内多台主机共享一个网关
      • 网段:每个局域网内的所有主机的IP都有一个共同的规律,那么就是网段来表示,如(192.168.12.x),表示该局域网内的所有主机都是以192.168.12开头的IP地址。(如在爬虫的过程中因为IP被封,那么有可能会导致整个小区都不能去访问这个网站,原因就是封的IP是局域网的网关,而不是你单独电脑的IP)
    • 路由表:(比如记录192.168.12.x,192.168.13.x,...)由于记录每个局域网之间的网关,由于确定后续的信息传递是由哪个局域网发出的信息。

通信过程:局域网内主机--->交换机--->路由器(通过路由表确定是哪个局域网发出的请求)--->交换机--->局域网内的主机

3、IP:

IP:例如人的学号、工号,是可变的,不是唯一标识符。当你换了一个环境,加入了另外一个局域网,那么你的IP也随之变化了

  • IP协议
    • ipv4协议:规则,四位点分割十进制。如192.168.12.3。
      • 每一位,对应的都是2的8次方的二进制位,即范围是在0.0.0.0~255.255.255.255之间
    • ipv6协议:规则,六位冒分割十六进制。
      • 如0:0:0:0:0:0~FFFFFF:FFFFFF:FFFFFF:FFFFFF:FFFFFF:FFFFFF:(192.168.13.3,同时兼容ipv4协议)
  • 公网IP
    • 因为ipv4的范围有限是有限的,所以IP地址的数量也是有限的,需要进行购买才能使用。(对应的如果使用了ipv6协议,那么IP地址的数量将会大大增加,就不存在这个问题了),公网IP就是我们能在网上访问到的这些网站,使用的都是公网IP。
    • 我理解为购买了公网IP,那么相应的IP就会出现在路由表上,那么其他主机就能通过路由器访问到该公网IP对应的网站信息,而内网IP并不会出现在路由表上,那么自然其他人是访问不到该IP对应的内容
    • 通信过程:
      • 每个路由器都包含了一定的路由表,而如果一个路由表中没有找到你发起请求的目标IP,那么路由器之间也会进行通信,直到找到包含目标IP的路由器,然后再进行通信。公网IP是一定会被路由器找到的。
      • 局域网主机--->交换机--->路由器a--->路由器b--->路由器c--->目标IP
  • 内网IP
    • 对应的,我们自身在使用IP的时候是不收费的,因为我们自身的IP是内网IP,外部是访问不到。如写了一个本地的网站,没有购买IP,其他朋友是无法看到你这个网站的。
    • 因为需要避免公网IP的地址和内网IP的地址出现重复,所以ipv4下进行字段划分,以下字段的地址就代表只能作为内部IP,而对应的公网IP的地址是不会在以下范围中出现的:
      • 192.168.0.0~192.168.255.255
      • 172.16.0.0~172.16.255.255
      • 10.0.0.0~10.255.255.255
    • 特殊的IP地址:
      • 127.0.0.1,本机IP,过网卡,不会过交换机,常在测试的时候用到
    • 查看自己的IP地址:
      • Windows下:ipconfig
      • Mac\Linux下:ifconfig
    • 子网掩码:
      • 用来判断两台主机是不是在同一个局域网下
      • 一般由0和255组成,如255.255.255.0
      • 那么它是怎么判断的?
        • 将主机IP与子网掩码进行按位与计算,如果数值相同那么就可以说这两天主机是在同一个局域网下
        • 按位与,将4位上的每位数字转换为二进制后进行与处理,得到相应的IP和子网掩码的二进制数据,
        • 其中1与任何数进行与后得到的就是任何数,如下所示:
        • 那么判断主机是不是在统一局域网也有规律,主要看子网掩码,
          • 如果子网掩码前3位都是255.255.255.x,那么IP的前3位也要相等,如192.168.12.x都是在一个局域网内
          • 如果子网掩码前3位都是255.255.x.x,那么IP在前2位也要相等,如192.168.x.x都是在一个局域网内
  • 端口:
    • 主要用于绝对一台机器内部应用程序的分配,每个程序在电脑上运行的时候都会开启一个端口,用于去执行这个操作。比如QQ聊天程序所占用的端口是800,在视频网站上看视频所占用的端口是900。这样分配后就能保证数据的传递是正确无误的,能够给到相对应的程序上
  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值