毕业有一年多了,大学的时候上过网络课程,但我一直认为:网络技术是最难得了,让我觉得无所适从。大四毕业设计的时候是一个ftp服务器,让我对网络、套接字有了新的认识。还有sniffer工具,加深了我对网络的理解。
昨天遇到一个问题,我的朋友唐磊从事网络方面的工作,昨天在qq上聊到了一个工具,扫描一个网段的主机的所有的端口,以便发现些问题展开攻击。于是我就希望实现一个具有类似功能的工具。
在实现方面需要两个步骤:一个是先利用ping找到所有打开的主机,然后把结果记录下来,最后针对每个主机,对端口进行逐一的扫描。从功能上来说后者很容易用java实现,只要利用socket.connect就可以做到,但是如果想实现ping功能呢?经过我多方努力,发现java没有ping的实现,更为严重的是,java实现不了ping!ping使用的是icmp协议,而icmp协议是ip层的。而Java只有实现了tcp/udp协议。tcp协议对应的是:socket;udp对应的是DatagramSocket。
综上所述:java比较适合实现应用层协议,比如:ftp/smtp之类。而对于传输层、网络连接层就爱莫能助了。
欢迎拍砖~~
分享到:
相关推荐
Java网络编程是Java开发中的重要领域,它涵盖了网络应用程序的设计、实现和调试。在这个主题下,我们可以探讨多个关键知识点: 1. **Java Socket编程**:Java的Socket类提供了基于TCP/IP协议的网络通信能力。通过...
《Java网络编程(第4版)》是一本深入探讨Java平台上的网络编程技术的专业书籍,适合想要提升Java通讯技术的学者阅读。此书全面覆盖了Java网络编程的基础和高级概念,帮助开发者理解如何利用Java语言构建高效、可靠的...
《Java网络编程(第四版)》是一本深入探讨Java在互联网环境下的编程技术的经典书籍。本书旨在帮助读者理解和掌握如何利用Java语言进行高效、安全的网络通信。书中内容覆盖了从基本的网络概念到复杂的多线程编程,是...
5. **网络安全**:书中会探讨网络安全问题,如SSL/TLS加密,以及如何使用Java的JSSE(Java Secure Socket Extension)来实现安全的网络通信。 6. **Java网络API**:Java提供了一系列网络相关的API,如InetAddress、...
JAVA网络编程的探讨 JAVA语言自诞生以来,就被广泛地应用于网络编程领域。由于其跨平台、面向对象、安全性高等特点,JAVA在网络编程中表现出色,能够支持多种互联网协议,从而极大地简化了网络设计和开发过程。 1....
接着,我们探讨"网络协议—Java网络编程之传输控制协议"。TCP(Transmission Control Protocol)是一种面向连接的、可靠的传输协议,它确保数据的无损、有序传输。在Java中,Socket类的使用就涉及到TCP协议。通过...
在本节中,我们将深入探讨Java网络编程的关键知识点,包括套接字(Socket)编程、多线程、URL处理、网络协议以及网络安全。 首先,我们来了解Java中的套接字编程。套接字是网络通信的基本单元,它提供了进程间的...
本教程将深入探讨如何利用Java进行高效且可靠的网络编程。 一、Java网络编程基础 Java提供了丰富的API来支持网络编程,如Socket、ServerSocket、URL、HttpURLConnection等。Socket是基于TCP协议的,用于实现客户端...
Java网络编程是Java开发中的重要领域,它涵盖了网络通信的所有基本概念和技术,使得Java应用程序能够通过网络进行数据传输和交互。本视频教程旨在为学习者提供一个全面且深入的Java网络编程指南,无论你是初学者还是...
首先,01-Java语言基础.ppt这部分内容将引导学习者回顾或建立Java编程的基础,包括语法、类、对象、异常处理等核心概念,这是学习网络编程的基石。理解这些基础知识,能帮助开发者编写出稳定、可维护的网络程序。 ...
让我们详细探讨一下Java网络编程的核心概念和相关知识点。 首先,Java网络编程主要基于Java的Socket编程模型,它允许程序创建网络连接并进行数据交换。Socket提供了进程间通信(IPC)的能力,使得两个网络上的应用...
本文将深入探讨标题和描述中提及的几个关键知识点:Java套接字编程、Java的网络功能与编程基础、TCP网络协议以及Java Transaction API。 首先,我们来了解**Java套接字编程**。套接字(Socket)是实现进程间通信的...
《Java网络编程(第二版)》是一本深入探讨Java在互联网环境下的编程技术的专业书籍。本书全面覆盖了Java网络编程的基础知识和高级技巧,旨在帮助读者掌握如何利用Java语言进行网络应用开发。以下是对其中主要知识点...
《Java网络编程》是一本深入探讨Java平台上的网络应用程序开发的经典教材。这本书涵盖了从基本的TCP/IP通信到高级的多线程并发处理、网络安全以及Web服务等广泛的主题。附带的源代码是学习过程中非常宝贵的资源,...
本文将深入探讨Java网络编程的基础知识,重点关注TCP和UDP两种主要的网络协议及其在Java中的实现。 首先,网络编程的核心在于通过网络协议与其他计算机进行通信。TCP/IP协议栈是目前最广泛采用的网络协议,它包括了...
在这个实例中,我们将深入探讨Java网络编程的基础及其在实际应用中的实践。本文将覆盖以下几个关键知识点: 1. **Java网络编程基础** - Java提供了丰富的类库支持网络编程,如`java.net`包下的Socket、...
然后,他们会深入探讨Java的Socket编程,这是实现客户端-服务器通信的关键技术,读者将学习如何创建和管理套接字,进行数据的发送和接收。 多线程是Java网络编程中的重要特性,因为通常网络应用程序需要同时处理多...
在这个“Java网络编程实例4”中,我们将深入探讨这些关键知识点。 1. **Java网络编程基础**:Java提供了丰富的API来支持网络编程,如`java.net`包下的Socket、ServerSocket、URL等类。Socket用于创建客户端和服务器...
在JAVA网络编程基础案例中,我们探讨的是如何利用Java语言进行网络通信,这涉及到一系列的概念和技术。Java网络编程是开发分布式应用的关键部分,它允许程序通过Internet或局域网进行数据传输。 首先,理解网络编程...
本文将深入探讨这两个主题,并结合文件名称"Java网络编程与分布式计算"来解析相关知识点。 首先,Java网络编程是Java开发中不可或缺的一部分,它允许程序通过网络进行通信,实现数据交换。Java提供了丰富的API,如...