网工 DHCP

非法DHCP 的原理

非法DHCP欺骗(Illegitimate DHCP Spoofing)是一种网络攻击技术,攻击者通过在网络中设置一个虚假的DHCP服务器来干扰正常的网络通信。这种攻击可以导致合法客户端接收到错误的网络配置信息,进而引发多种安全问题。以下是非法DHCP欺骗的基本原理:

  1. 伪造DHCP服务器: 攻击者在网络内部部署一个非法的DHCP服务器。这个服务器会监听网络上的DHCP请求,并抢先于合法的DHCP服务器回应客户端的请求。
  2. 发送虚假的DHCP Offer: 当客户端启动时,它会广播DHCP Discover消息寻找可用的DHCP服务器。非法DHCP服务器会截获这些Discover消息,并迅速回应一个DHCP Offer消息,这个消息包含了错误的网络参数,如错误的默认网关、DNS服务器地址或其他配置信息。
  3. 接收DHCP Request: 客户端接收到DHCP Offer之后,通常会发送一个DHCP Request消息,确认它想要使用提供的IP地址。此时,非法DHCP服务器再次抢先回应,使客户端相信它是合法的DHCP服务器。
  4. 分配错误的网络参数: 攻击者可以通过非法DHCP服务器给客户端分配一个错误的默认网关地址,这可能会指向攻击者的机器,或者是不存在的地址。这样,客户端发送的所有流量都会被误导,无法正确地到达目的网络。同样,DNS服务器地址也可能被篡改,导致用户访问的网站被重定向到恶意站点。
  5. 后果:
    • 用户无法访问合法的网络资源,因为他们的流量被导向了错误的地方。
    • 攻击者可以监听或篡改用户的网络通信,因为所有的流量都可能经过攻击者的机器。
    • 网络管理员可能会发现网络中存在大量的广播风暴,这是因为客户端不断地尝试重新获取正确的网络配置信息。
    • 安全性和隐私性受到严重威胁,因为攻击者能够捕获敏感信息。

为了防范非法DHCP欺骗,网络管理员可以采取以下措施:

  • 在网络中部署合法的DHCP Snooping功能,它能够过滤掉来自未信任端口的DHCP响应。
  • 限制只有特定的交换机端口才能发送DHCP响应。
  • 定期审核网络设备的安全设置,并确保所有设备都是最新状态,包括安全补丁。
  • 对重要的网络设备实施物理安全措施,防止未经授权的接入。

网工 FTP

FTP(File Transfer Protocol)是一种用于在网络上传输文件的标准协议。FTP有两种主要的工作模式:主动模式(Active Mode)和被动模式(Passive Mode)。这两种模式的区别主要在于客户端和服务器之间如何建立数据连接。

主动模式(Active Mode)

  1. 控制连接:客户端发起一个控制连接到服务器的默认端口21。
  2. 数据连接:当客户端请求数据传输时,服务器会尝试打开一个临时端口(通常大于1024),并通过控制连接告诉客户端该端口号。
  3. 服务器监听:服务器开始监听这个临时端口以接收客户端的数据连接。
  4. 客户端发起连接:客户端连接到服务器指定的临时端口以传输数据。
  5. 数据传输:数据传输完成后,数据连接关闭。

如果客户端和服务器之间有防火墙,主动模式下服务器是无法连接客户端的。需要在防火墙上开户ftp 穿越。

被动模式(Passive Mode)

  1. 控制连接:客户端发起一个控制连接到服务器的默认端口21。
  2. 数据连接:当客户端请求数据传输时,服务器会在一个随机的临时端口上监听,并通过控制连接告诉客户端该端口号。
  3. 客户端监听:客户端监听一个端口等待服务器连接。
  4. 服务器发起连接:服务器连接到客户端的指定端口以建立数据连接。
  5. 数据传输:数据传输完成后,数据连接关闭。

被动模式下不受防火墙的限制 。

区别总结

  • 主动模式:服务器尝试连接客户端的随机端口。
  • 被动模式:服务器监听一个临时端口,客户端连接到该端口。

选择模式的原因

  • 主动模式通常在客户端位于可以接受外部连接的网络环境中使用。
  • 被动模式通常用于客户端位于防火墙后面或者NAT(Network Address Translation)环境中的情况,因为客户端可以发起连接,而服务器不能从外部直接连接到客户端。

注意事项

  • 在使用FTP时,被动模式可能需要在防火墙上开放额外的端口范围。
  • 许多现代FTP客户端和服务器支持自动检测并选择最合适的模式。

网工 基带与宽带传输、模拟信号与数字信号

基带(Baseband)和宽带(Broadband)是描述通信系统中信号传输特性的两个术语。它们主要区别在于信号的传输方式和使用的频谱范围。下面详细解释这两者的区别:

基带传输

基带传输是指直接使用原始信号(通常是低频信号)在信道中传输的方法。在基带传输中,信号没有经过调制,直接以原始形式发送。

特点:

  • 信号未经调制:基带信号通常是原始的数字信号或模拟信号,没有经过调制。
  • 占用单一频段:基带信号占用一个相对较低且固定的频段。
  • 传输距离较短:由于信号没有经过调制,基带信号的传输距离通常较短。
  • 适用于近距离传输:如局域网(LAN)中的以太网信号传输。
  • 带宽限制:基带信号的带宽受限于传输媒介的特性。

宽带传输

宽带传输是指通过调制技术将信号分布在较宽的频带上进行传输的方式。在宽带传输中,信号通过调制后在较高的频率范围内传输。

特点:

  • 信号经过调制:宽带信号通常需要经过调制,将原始信号转换到较高的频率范围。
  • 占用较宽频段:宽带信号占用较宽的频带,可以同时传输多个信号。
  • 传输距离较长:由于信号经过调制,宽带信号的传输距离通常较长。
  • 适用于远距离传输:如广域网(WAN)中的电话线路、有线电视网络等。
  • 带宽较高:宽带信号可以提供更高的数据传输速率。

应用场景

  • 基带传输:通常用于局域网(LAN)中,如以太网、USB、串行通信等。
  • 宽带传输:适用于远距离通信和需要较高带宽的应用,如ADSL、有线电视、卫星通信等。

示例

  • 以太网:以太网使用基带传输技术,信号直接在电缆中传输,适用于短距离的局域网。
  • ADSL:非对称数字用户线路(ADSL)使用宽带传输技术,信号通过调制分布在不同的频率上,适用于远距离的互联网接入。

总结

基带传输和宽带传输的主要区别在于信号是否经过调制以及使用的频谱范围。基带传输通常适用于短距离和较低带宽的需求,而宽带传输则适用于远距离和较高带宽的需求。在实际应用中,选择哪种传输方式取决于具体的应用场景、传输距离和所需的带宽等因素。

模拟信号和数字信号都可以通过多种媒介进行传输。

数字信号传输媒介

有线媒介

  • 双绞线(Twisted Pair Cable):用于以太网和其他类型的局域网。
  • 同轴电缆(Coaxial Cable):用于有线电视网络,有时也用于局域网。
  • 光纤(Optical Fiber):广泛用于高速数据通信,如互联网骨干网、数据中心内部连接等。
  • 电力线通信(Power Line Communication, PLC):通过家庭或办公室的电力线传输数据。

无线媒介

  • 无线电波(Radio Waves):用于蜂窝网络、Wi-Fi等。
  • 微波(Microwaves):用于点对点无线链路、卫星通信等。
  • 红外线(Infrared):用于短距离无线通信,如键盘、鼠标等设备。
  • 蓝牙(Bluetooth):用于短距离无线通信,如耳机、扬声器等。
  • 近场通信(Near Field Communication, NFC):用于接触式支付、身份验证等。
  • 超宽带(Ultra-Wideband, UWB):用于短距离高速数据传输。

总结

  • 模拟信号通常通过传统的有线媒介如双绞线和同轴电缆传输,以及通过无线媒介如无线电波和微波进行广播。
  • 数字信号则更多地通过光纤和先进的无线技术进行传输,如Wi-Fi、蓝牙和蜂窝网络等。

随着技术的进步,越来越多的应用倾向于使用数字信号,因为数字信号更容易处理、更稳定并且可以实现更高的数据传输速率。然而,在一些特殊的应用场合,模拟信号依然有其独特的价值。

模拟信道和数字信道是通信系统中两种基本的数据传输方式,它们分别使用模拟信号和数字信号来传输信息。下面详细介绍这两种信道的特点:

模拟信道

模拟信道使用连续变化的信号来传输信息。这些信号通常是电压或电流的变化,它们可以代表语音、图像或任何形式的连续变化的信号。在模拟通信中,信号的幅度、频率或相位可以被调制以携带信息。

特点:

  • 连续性:模拟信号是连续变化的,可以取任意值。
  • 易受干扰:模拟信号容易受到噪声的影响,这可能导致信号失真。
  • 带宽利用率:模拟信号占用一定的带宽,不同类型的模拟信号可能需要不同的带宽。
  • 调制技术:模拟信号可以通过AM(幅度调制)、FM(频率调制)或PM(相位调制)等方式进行调制。
  • 恢复质量:模拟信号的恢复质量取决于接收端的信噪比,信噪比越高,恢复的质量越好。

数字信道

数字信道则使用离散的信号来传输信息。这些信号通常是由二进制数(0 和 1)组成的序列。数字信号的优点在于它们更容易处理和传输,而且可以通过编码技术提高抗干扰能力。

特点:

  • 离散性:数字信号是离散的,只有有限的状态(如0和1)。
  • 抗干扰性:数字信号可以使用纠错编码等技术减少错误。
  • 带宽效率:数字信号可以通过高级调制技术和多路复用技术提高带宽利用率。
  • 调制技术:数字信号可以采用ASK(幅度键控)、FSK(频移键控)、PSK(相移键控)等多种调制方式。
  • 恢复质量:数字信号的恢复质量主要取决于误码率,误码率越低,恢复的质量越好。

比较

  • 传输质量:数字信号在传输过程中可以保持良好的完整性,而模拟信号则容易受到噪声的影响。
  • 处理难度:数字信号更容易进行存储、处理和加密。
  • 成本:早期模拟技术的成本可能较低,但现在数字技术的成本已经大大降低。
  • 应用领域:模拟技术在语音通信等领域仍然有其地位,而数字技术广泛应用于数据通信、互联网等领域。

总的来说,数字通信由于其高可靠性、易于处理以及便于集成等优势,在现代通信系统中占据主导地位。不过,在某些特定的应用场景下,模拟通信仍有其独特的优势。

网工 传输层其它的协议

以下是一些除了TCP和UDP之外相对常见的传输层协议:

SPX(Sequenced Packet Exchange,顺序包交换协议)

  • 由Novell公司开发,主要用在Novell NetWare网络操作系统中,它与TCP类似,是面向连接的可靠协议,确保数据按顺序传递,它和IPX协议(网络层协议)组合构成NetWare的核心通信机制,但随着NetWare操作系统使用的减少,SPX的使用场景也变得非常有限。

DCCP(Datagram Congestion Control Protocol,数据报拥塞控制协议) :

  • 提供了一种介于TCP的可靠性和UDP的低开销与低延迟之间的通信服务。它支持拥塞控制机制,但又是面向数据报的(类似UDP不是面向流的),适用于一些对拥塞控制有要求但又不想用TCP的场景如流媒体等。

SCTP(Stream Control Transmission Protocol,流控制传输协议) :

  • 结合了TCP和UDP的一些优点。
  • 它支持多流(在一个连接中可以有多个独立的逻辑流)和多宿(一个端点可以有多个IP地址用于通信)特性等。常用于电信领域等需要可靠且复杂数据传输场景。

RTP(Real – time Transport Protocol,实时传输协议)和RTCP(Real – time Transport Control Protocol ,实时传输控制协议) :

  • RTP 用于承载实时数据比如音频和视频等媒体流数据;
  • RTCP 用于监控服务质量和传递与正在进行的会话相关的信息(如统计数据、反馈等),通常它们配合使用,广泛应用于网络多媒体通信如视频会议、IP电话等。

网工 tcp 与udp 的伪首部

一、TCP伪首部

  1. 组成:
    • 源IP地址:发送方的IP地址,占4字节。
    • 目的IP地址:接收方的IP地址,占4字节。
    • 保留:置为0,占1字节。
    • 协议:标识上层协议是TCP,值为6,占1字节。
    • TCP报文长度:TCP报文段的长度(包括TCP首部和数据),占2字节。
  2. 作用:
    • 在计算TCP校验和时使用。通过把伪首部与TCP报文(包括TCP首部和数据)一起进行校验和计算,可以增强校验的准确性,确保TCP报文在传输过程中没有被篡改,并且能够正确地到达目标地址和上层协议。

二、UDP伪首部

  1. 组成:
    • 源IP地址:同样是发送方的IP地址,4字节。
    • 目的IP地址:接收方的IP地址,4字节。
    • 保留:也是置为0,1字节。
    • 协议:标识上层协议是UDP,值为17,1字节。
    • UDP报文长度:UDP数据报的长度(包括UDP首部和数据),2字节。
  2. 作用:
    • 与TCP伪首部类似,主要用于计算UDP校验和。确保UDP数据报在网络中传输的完整性和正确性,防止在传输过程中因各种原因导致的数据错误或被篡改。

三、两者的共同点和意义

  • 共同点:
    • 都包含源IP地址、目的IP地址、协议类型和报文长度等关键信息。
    • 都不实际在网络中传输,只是在计算校验和时临时参与运算。
  • 意义:
    • 增强了校验的可靠性:通过引入这些网络层的关键信息(IP地址等)到传输层校验和的计算中,可以更全面地验证数据在网络中传输的正确性,因为IP地址的参与可以确保数据到达了正确的目的地,协议类型的确认可以保证上层协议的匹配性。
    • 提高数据传输的准确性:有助于检测和防范在传输过程中可能出现的各种错误,如数据位的篡改、传输路径错误等,从而提升了整个网络通信的质量和可靠性。

示例

某UDP报文的2个16bit 为 1110011001100110 1101010101010101 得到的校验和是

  1. 首先将两个 16 位的数据相加: 1110011001100110 +1101010101010101 = 1 1011101110111011
  2. 然后对结果进行回卷进位:
    • 如果相加结果超过 16 位,将进位值与低 16 位的值再次相加。这里超过了 16 位,只取低 16 位,进位是1。
    • 把进位与低 16 位相加:1011101110111011+1 = 1011101110111100
  3. 最后对结果取反:
    • 对1011101110111100取反,得到0100010001000011
    所以校验和是 0100010001000011