前言
本篇介绍网络安全的两个基础内容,IP地址以及Dos命令。IP地址属于计算机网络中非常重要的一环,其会牵扯到诸多概念,下文会进行简要介绍。Dos则是Windows系统提供用来操作磁盘的软件,使用命令可以较为方便的进行操作磁盘中的文件和目录,也是网络安全领域必备的技能。
局域网
介绍IP地址前,需要认识局域网的概念。
什么是局域网
局域网(Local Area Networks)是局部地区形成的一个区域网络,通常在几千米内,如家庭,办公室,大学等搭建的私有网络,都可以算作局域网。
局域网的构成
通常情况的局域网由交换机(组成局域网的核心),网线,终端pc构成。有小盆友会问了,那路由器是干啥的?为什么很多家庭里用的都是路由器呢?现在一般的家用路由器往往封装了二层交换机的功能,可以看作是一个三层交换机(这里提到的层按照OSI七层模型来看),路由器可以连接一条外网的网线,使得局域网内的终端可以访问外网。而交换机通常都是二层交换机,它无法连接外网,仅能通过识别Mac地址进行数据包转发,启到数据交换的作用,所以常用于局域网内终端间的通信。
前面提到的路由器,以及二层交换机,三层交换机的区别,可以参考此篇文章;它门在不同网络模型下对应的层可以参考下图。
IP地址(IPV4)
平时生活中,每个人都有家庭地址,这样你买的快递才能正确的送到你家。互联网中也是如此,每一台终端设备(台式机,笔记本,手机)它都会有一个唯一的地址,从而方便找到这台设备,这个地址就是IP地址。
IP地址的组成
IP地址由32位2进制组成,由于这样实在太过难记,后面采用了点分十进制的写法。下面是同一个IP地址的两种写法:
1 | 32位2进制: 1100 0000 1010 1000 0000 0000 0000 0001 |
子网掩码
局域网通信规则:在同一个局域网中,所有IP必须在同一个网段才可以互相通信。
IP构成:网络位+主机位(网络位相同的IP地址,为同一个网段)。
子网掩码:用来确定IP地址的网络位。
子网掩码有3类,通过子网掩码确定网络位时,与255对应的数字为网络位,与0对应的数字为主机位。参考下表:
IP地址 | 子网掩码 | 网段 |
---|---|---|
10.1.1.12 | 255.0.0.0 | 10.0.0.0 |
10.1.1.12 | 255.255.0.0 | 10.1.0.0 |
10.1.1.12 | 255.255.255.0 | 10.1.1.0 |
IP地址分类
- A、B、C类的IP地址最为常用,可用于配置终端的IP地址
- D类IP地址用于组播
- E类IP地址用于科研
IP地址类型 | 第一字节十进制范围 | 二进制固定最高位 | 默认网络位 | 默认主机位 | 每个网络中可容纳的主机数 |
---|---|---|---|---|---|
A | 0~126 | 0 | 8位 | 24位 | 2^24-2 |
B | 128~191 | 10 | 16位 | 16位 | 2^16-2 |
C | 192~223 | 110 | 24位 | 8位 | 2^8-2 |
D | 224~239 | 1110 | 组播地址使用 | ||
E | 240~255 | 1111 | 科研实验使用 |
保留地址
互联网中有一部分地址是不被分配的,作为保留地址,实现单独的功能。
本地回环地址(与自己通信):127.0.0.1
私网地址:
1)A类:10.xxx.xxx.xxx
2)B类:172.16.0.0~172.31.255.255
3)C类:192.168.xxx.xxx
可用主机位
有一点需要注意到,前面IP地址分类的表格中,每个网络中可容纳的主机数最后都需要减去2,原因在于,在一个网段下,第一个和最后一个的地址是不能用作主机位的。例如
1 | IP地址: 10.1.1.2 |
其中第一个地址10.1.1.0代表网段,最后一个地址10.1.1.255为广播地址(向该网段内所有主机发送消息)
网关
什么是网关
前面提到了IP地址与局域网的概念,同一个局域网中的终端,往往处在同一个网段下,可以借助交换机彼此互相通信。但若想访问一个外网(例如京东商城的主页),就得依靠网关(GateWay,GW)。
什么是网关,它相当于网络的出口,打个比方,比如说你要出国,那得坐飞机,坐飞机你得先去飞机场。飞机场就相当于网关。若想访问外网,那就把你的请求数据包发给网关,网关会帮你发送出去。一般来说,路由器会充当网关的角色。
1 | PC端向外发包的过程: |
修改网关会怎样
下面通过一个小实验,来看一下网关的重要性:
1)打开命令行,输入指令ipconfig,查看当前IP地址,子网掩码以及网关
2)接下来我们去试着修改网关,当前操作系统是Windows10,在别的Windows版本上会有所不同,右键点击右下角的一个小电脑图标,选择打开“网络和Internet”设置。
3)进入设置后,选择更改适配器选项
4)接下来可以看到一些链接上的网络,其中两个写着VMware一看就不是我们关心的。我们只需要找到以太网(xp系统上对应本地连接),然后右键属性
5)进入以太网属性后,找到Internet协议版本4(TCP/IPV4)双击
6)可以进入到配置IP地址以及DNS的地方,通常系统会默认自动获取IP地址以及DNS服务器地址。我这里是手动进行了配置。可以看到,我当前主机的默认网关为192.168.0.1。这时我们修改一下这个网关,改为192.168.0.5并保存,看看有什么变化。
7)保存后,可以发现,网络链接的界面,以太网会显示未识别的网络,任意打开一个外网网址,会发现链接不上了。
原因在于我们设置的网关地址是错误的网关地址,所以发送数据给这个地址时,并没有网关将我们发送的数据转发出去,因此会链接不上外网。所以想要链接外网,必须得有网关。
网关的地址
通常而言,网关的地址会选择可用地址(xxx.xxx.xxx.1~xxx.xxx.xxx.254)的第一个或者最后一个,也就是xxx.xxx.xxx.1或者xxx.xxx.xxx.254(特定情况下,网络管理员也有可能将网关的地址设置成别的情况,但是非常少见。),例如刚刚我主机上的网关地址就是192.168.0.1。
DNS
什么是DNS
由于IP地址不方便记忆且不能显示地址组织的名称和性质等缺点,人们设计出了域名,例如www.baidu.com就是百度的域名。显然,我们是没法通过域名直接访问百度的,相应的,人们又设计出一套域名与IP地址互相转换的系统,也就是域名解析系统(Domain Name System),有了DNS,便可以直接通过域名去访问某个网站。
访问网站的过程
一般来说,我们不会去记忆一个网站的IP地址,而是去记住它的域名,所以会在游览器中输入域名。游览器会经过以下几个步骤,完成对域名的解析。
- 游览器会先去查询DNS缓存,如果最近访问过该网站,则该网站的域名与IP的对应关系会存在DNS缓存中。但是DNS缓存的内容有限,新加入的会刷新掉很早之前缓存的内容。需要注意的一点,DNS缓存是可以投毒的。
- 如果DNS缓存中查询不到,这时会去查询host文件。在Windows系统中保存的一个没有后缀的,名为host的文件,该文件记录了部分域名与IP地址的对应关系,位于操作系统System32/drivers/etc目录下(用记事本打开)。 然而大部分情况下,host文件中,仅记录了本地回环地址127.0.0.1与localhost的对应关系。
- 在前两种方式都失效的情况下,就只有去查询DNS服务器了。这个过程相对复杂一些,这有一篇不错的文章“一个DNS数据包的惊险之旅”,用故事的方式讲述了DNS查询服务器的过程,便于理解。
DNS劫持
一般来说,电脑设置的DNS服务器选项都是默认设置成自动获取的。如下图(与上文出现的IP地址位于同一个界面):
也可以根据自家购买的运营商服务以及所在地区,选择相应的DNS服务器,然后填在首选DNS服务器的位置上。当然,手动指定DNS服务器,难免会遇到服务器宕机的情况。例如QQ可以正常聊天,但是网页就是打不开,这就说明DNS解析出问题了,需要重新指定一个DNS服务器。那么该指定谁呢?有一个万能的DNS服务器114.114.114.114,这个在国内各个运营商都是支持的。紧急情况下使用它总是不错的,可以填在备用DNS服务器的位置上。
刚刚提到DNS服务器是有可能会出问题的,有时候是自身机器出了问题,也有时候是因为黑客进行了DNS劫持。什么是DNS劫持呢?这里简单概述其中一种方法,首先黑客会攻击DNS服务器,然后将DNS服务器中域名与IP地址的对应关系替换掉,例如将京东官网域名对应的IP地址换成另一个一模一样界面的钓鱼网站的IP地址,这时用户再次通过域名访问京东官网时,如果是通过此服务器进行域名解析的话,获取到的就是假IP地址,就会跳转到钓鱼网站,这时一旦在钓鱼网站输入了用户名和密码,账号的内容就被泄露出去了。当然,这种方式工程量还是很大的,DNS劫持有很多的实现,均是对于DNS解析的过程做手脚的,例如刚刚提到的DNS缓存,也可以作为黑客的攻击目标。
相关命令
在对DNS有部分了解后,这里给大家介绍几个DNS相关的命令:
ping(测试网络连连通性):
1 | ping 目标IP地址 #测试网络连通性,有去有回即为可以成功通路 |
ping指令需要注意一点,ping不通不一定不在线,有可能是被防火墙阻拦了,而导致无法ping通。这里有一个小实验,就是启用两台虚拟机,win2003和winxp各一台,通过自定义网络适配器(相当于交换机,该选项位于虚拟机设置的位置),选择特定虚拟网络(注意不要选用VMnet0),将两台虚拟机设置到同一个网段,并关闭双方的防火墙后,看能否互相ping通。这相当于是一个局域网内的ping实验。
nslookup(手动解析域名):
ipconfig(查看IP):
1 | ipconfig #查看ip基本信息 |
Dos命令
如何操作Dos命令
1 | Win + R ---运行---输入cmd--回车,将调出C:\Windows\system32\cmd.exe |
基本命令
1 | 1. 命令:color f0 |
目录相关命令
1 | 1. 命令:dir |
重定向符号
1 | 1. 命令:> |
文件操作命令
1 | 1. 命令:echo / copy con |
参考链接
- https://www.bilibili.com/video/BV1i7411G7vm?p=8 (千峰网络开源课程p8~p13)
- https://blog.csdn.net/weixin_43252204/article/details/105338307#DOS%E5%91%BD%E4%BB%A4 (Beglage_buglige学习笔记篇1)
- https://blog.csdn.net/lqf_ok/article/details/88867595 (介绍不同层交换机以及路由器的比较)
- https://www.cnblogs.com/qishui/p/5428938.html (OSI模型与TCP/IP模型的比较)
- https://blog.csdn.net/loveCC_orange/article/details/79258071 (关于IP地址的解析)
- https://bbs.pediy.com/thread-257288.htm (轩辕哥的文章,一个DNS数据包的惊险之旅)