局域网IP扫描的原理是什么?

棠大大 2月前  网络   354

我发现很多网络扫描工具可以扫描出本局域网内所有的IP、MAC地址,甚至还有主机名,请问这是什么原理实现的?有没有办法防止被扫描到?

4 个回答
  • 孤城浪人 2月前
    2
    以下是一些局域网扫描工具的常见原理:

    Ping扫描:这种方法使用Internet控制消息协议(ICMP)来检测网络中的主机是否可达。扫描器发送一个ping请求到网络上的每个IP地址,并等待响应。如果有主机响应,则表示该主机是可达的。

    ARP扫描:这种方法通过广播ARP请求来扫描网络上的主机。ARP协议负责将IP地址映射到MAC地址,因此如果一个主机在网络上,那么它的MAC地址就会响应ARP请求。因此,通过发送ARP请求并收集响应,扫描器可以确定哪些主机是可达的。

    端口扫描:这种方法通过向特定端口发送网络请求来扫描网络中的主机。扫描器发送一系列TCP或UDP请求到特定的端口,然后等待响应。如果有主机响应,则表示该主机在指定端口上是可用的。
    2 回复引用 引用
  • 木马猎人 2月前
    3
    相信搞网络的应该都听说过nbtscan这个工具,当我们处于局域网中,想查询同处一个局域网的主机时,它就是个不错的工具(比如追踪ARP诈骗源)。

    它也很好用,在win下,nbtscan+ip范围即可,如:(我机子的IP是172.17.27.199,子网掩码是255.255.255.0,下面的抓包会用到我的IP查找相应的数据包)。

    很快就能得到周围的主机的信息了,那么,这里就有疑问了,它是怎么实现的呢,显然由于有MAC地址,估计跟ARP协议有关。

    打开抓包工具一看就知道了,用Wireshark,于是,我抓到了这样的信息:

    果然跟ARP协议有关,就相当于遍历每个IP,使用ARP广播发相关的信息,然后接收到的主机便回复我的机子,那么对方的IP还有MAC地址我就会知道了,上图中倒数第二个数据包便是172,.17.27.193的ARP回复消息。

    好了,那么接下来,又有问题了:ARP协议根本没有主机名这一项啊!

    相信你也应该发现了,就是上图中淡黄的那一行,nbtscan在得到对方的IP还有MAC后,遍紧接着发送一个NBNS协议数据包,得到了对方的主机名。

    总结下这个工具的运行流程:

    遍历输入的IP范围,以广播MAC地址发送ARP查询。一旦接收到ARP回复,遍记录相应的IP与MAC地址,同时向对方发送NBNS消息查询对方的主机信息。
    2 回复引用 引用
  • 阿炭 2月前
    4
    原理上面已经讲得很清楚了,我来讲讲如何防御:

    一、第三方工具
    比如360安全卫士,打开360安全卫士 --> 功能大全 --> 我的工具 --> 流量防火墙 --> 局域网防护,开启自动绑定网关,ARP主动防御等功能。

    二、使用ARP命令进行绑定
    在物理机中,打开命令提示符,使用arp -s ip地址 mac地址,在这之前需要得到电脑的ip地址和mac地址,可通过ipconfig /all,查看详细ip信息,

    例如:arp -s 192.168.1.16 00-11-2F-3F-96-88,如果要查看是否绑定,可以使用arp -a 192.168.1.16,即ARP -a ip地址回车,会得到如下如下提示:Internet Address Physical Address Type 192.168.1.16 00-11-2f-3f-96-88 static,就表示成功了,如果要解除绑定,在命令行下输入arp -d 192.168.1.16 ,即:ARP -d IP地址 -d为delete,就删除了。

    三、通过路由器设置进行绑定
    登录路由器后台,找到IP与MAC绑定模块,进行相关的绑定和解绑。当然不同的路由器的操作可能不一样,但原理都是一样的,都是通过将ip地址和mac地址进行绑定,这样不会被欺骗修改,达到防御的目的。
    2 回复引用 引用
  • 小何同志 2月前
    5

    我来说说局域网扫描如何获取操作系统版本。以NMAP工具为例,NMAP 带有一个数据库,它在你安装 NMAP 的时候就会被安装。这个数据库用于操作系统的探测,它会执行五种不同的测试,每种测试由一个或者多个数据包组成,目标系统对每个数据包作出的响应有助于确定操作系统的类型。这五种不同的测试是:

    序列生成(Sequence Generation)、ICMP 回显、TCP 显式拥塞通知(Explicit Congestion Notification)、TCP、UDP

    现在让我们分别看看他们各自在做什么:

    序列生成

    序列生成测试由六个数据包组成,这六个包是每隔 100 毫秒分开发送的,且都是 TCP SYN 包。

    每个 TCP SYN 包的结果将有助于 NMAP 确定操作系统的类型。

    ICMP 回显

    两个有着不同设置的 ICMP 请求包被送到目标系统,由此产生的反应将有助于实现验证操作系统类型。

    TCP 显式拥塞通知(Explicit Congestion Notification)

    当生成许多包通过路由器时会导致其负载变大,这称之为拥塞。其结果就是系统会变慢以降低拥堵,以便路由器不会发生丢包。

    这个包仅为了得到目标系统的响应而发送。因为不同的操作系统以不同的方式处理这个包,所以返回的特定值可以用来判断操作系统。

    TCP

    在这个测试中会发送六个数据包。

    一些带有特定的包设置的包被发送用来到打开的或关闭的端口。结果也将会因为操作系统的不同而不同。

    所有 TCP 包都是以如下不同的标志被发送:

    1.无标志

    2.SYN、FIN、URG 和 PSH

    3.ACK

    4.SYN

    5.ACK

    6.FIN、PSH 和 URG

    UDP

    这个测试由一个被发送给一个关闭的端口的数据包组成。

    如果目标系统上的这个端口是关闭的,而且返回一条 ICMP 端口不可达的信息,那么就说明没有防火墙。

    1 回复引用 引用
    • 探知网
      6
        立即登录 立即注册
返回
发新帖