ping & telnet 实现类:

import org.springframework.data.web.JsonPath;

import java.io.IOException;
import java.net.*; public class PTUtil {
/***
* ping操作
* @param hostname
* @param timeout in milliseconds
* @return
*/
public static JsonResult pingResult(String hostname,Integer timeout){
JsonResult jsonResult = new JsonResult();
try {
InetAddress address = InetAddress.getByName(hostname);
boolean flag = address.isReachable(timeout);
if(flag){
jsonResult.setMessage("ping结果:the address is reachable.");
}else{
jsonResult.setCode(Constants.ResultCode.EXCEPTION);
jsonResult.setMessage("ping结果:the address is unreachable.");
}
} catch (UnknownHostException e) {
jsonResult.setCode(Constants.ResultCode.EXCEPTION);
jsonResult.setMessage("ping结果:UnknownHostException:"+e.getMessage());
} catch (IOException e) {
jsonResult.setCode(Constants.ResultCode.EXCEPTION);
jsonResult.setMessage("ping结果:IOException:"+e.getMessage());
}
return jsonResult;
}
/***
* telnet 操作
* @param hostname
* @param timeout in milliseconds
* @return
*/
public static JsonResult telnetResult(String hostname,Integer port,Integer timeout){
JsonResult jsonResult = new JsonResult();
try {
Socket server = new Socket();
InetSocketAddress address = new InetSocketAddress(hostname,port);
server.connect(address, timeout);
server.close();
jsonResult.setMessage("telnet结果:success!");
}catch (UnknownHostException e) {
jsonResult.setCode(Constants.ResultCode.EXCEPTION);
jsonResult.setMessage("telnet结果:UnknownHostException:"+e.getMessage());
} catch (IOException e) {
jsonResult.setCode(Constants.ResultCode.EXCEPTION);
jsonResult.setMessage("telnet结果:IOException:"+e.getMessage());
}
return jsonResult;
}
}

相关类:

public class JsonResult {

    private String code;//结果编码
private String message;//结果描述
private Object data; public JsonResult() {
this.setCode(Constants.ResultCode.SUCCESS);
this.setMessage(Constants.ResultCode.SUCCESS.msg()); } public JsonResult(Constants.ResultCode code) {
this.setCode(code);
this.setMessage(code.msg());
} public JsonResult(Constants.ResultCode code, String message) {
this.setCode(code);
this.setMessage(message);
} public JsonResult(Constants.ResultCode code, String message, Object data) {
this.setCode(code);
this.setMessage(message);
this.setData(data);
} public String getCode() {
return code;
}
public void setCode(Constants.ResultCode code) {
this.code = code.val();
this.message = code.msg();
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
} public Object getData() {
return data;
} public void setData(Object data) {
this.data = data;
}
}
public class Constants {
/***
*删除状态
*/
public static enum DeleteStatus{
NORMAL("0","NORMAL","正常"),DELETE("1","DELETE","删除");
private DeleteStatus(String value,String name,String desc){
this.value=value;
this.name=name;
this.desc=desc;
}
private final String value;
private final String name;
private final String desc; public String getValue() {
return value;
} public String getName() {
return name;
} public String getDesc() {
return desc;
}
} /***
* Result code
*/
public static enum ResultCode {
/** 成功 */
SUCCESS("200", "成功"),
NULL_DATA("205","无数据"),
/** 没有登录 */
NOT_LOGIN("400", "没有登录"), /** 发生异常 */
EXCEPTION("401", "发生异常"), /** 系统错误 */
SYS_ERROR("402", "系统错误"), /** 参数错误 */
PARAMS_ERROR("403", "参数错误 "), /** 不支持或已经废弃 */
NOT_SUPPORTED("410", "不支持或已经废弃"), /** AuthCode错误 */
INVALID_AUTHCODE("444", "无效的AuthCode"), /** 太频繁的调用 */
TOO_FREQUENT("445", "太频繁的调用"), /** 未知的错误 */
UNKNOWN_ERROR("499", "未知错误"), private ResultCode(String value, String msg){
this.val = value;
this.msg = msg;
} public String val() {
return val;
} public String msg() {
return msg;
} private String val;
private String msg;
} }

Java——ping & telnet实现的更多相关文章

  1. Java 实现 telnet命令 验证主机端口的连通性

    Java 实现 telnet命令 验证主机端口的连通性 1.Telnet 命令 Telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式.它为用户提供了在本地计 ...

  2. What are Traceroute, Ping, Telnet and Nslookup commands?

    https://help.maximumasp.com/KB/a445/connectivity-testing-with-ping-telnet-tracert-and-pathping-.aspx ...

  3. centos linux系统日常管理3 服务管理ntsysv,chkconfig,系统日志rsyslog,last ,lastb ,exec,xargs,dmesg,screen,nohup,curl,ping ,telnet,traceroute ,dig ,nc,nmap,host,nethogs 第十六节课

    centos linux系统日常管理3  服务管理ntsysv,chkconfig,系统日志rsyslog,last ,lastb ,exec,xargs,dmesg,screen,nohup,cur ...

  4. Java调用Telnet示例

    import java.io.IOException; import java.io.InputStream; import java.io.PrintStream; import java.io.U ...

  5. ping telnet ssh netstat

    1.pingping命令工作在OSI参考模型的第三层-网络层.ping命令会发送一个数据包到目的主机,然后等待从目的主机接收回复数据包,当目的主机接收到这个数据包时,为源主机发送回复数据包,这个测试命 ...

  6. ping,telnet,tracert分别用的是什么协议

    Telnet使用的是tcp协议使用示例:telnet 192.168.1.20 80 ping命令使用的是icmp协议示例:ping www.sina.com.cn或ping 192.168.1.10 ...

  7. ping telnet 指令

    Ping 一 作用 ping能够辨别网络功能的某些状态,这些状态是日常网络故障诊断的基础.Ping能够识别连接的二进制状态(看是否连通).Ping命令通过过向计算机发送ICMP回应报文并监听回应报文的 ...

  8. 如何测试一台主机的IP和端口是否能连通,ping telnet

    通过ping 判断一台主机是否开机. 通过:telnet 121.199.167.99 61616  判断一台主机的端口是否能连通. 本机------本地防火墙-------本地路由器-------- ...

  9. Java ping 主机 端口

    22:04:08.002 [main] INFO Ping - 目标地址 192.168.1.107 是否可到达:true 22:04:08.006 [main] INFO Ping - 执行命令 p ...

随机推荐

  1. flask shell命令

    在flask项目目录下,使用pipenv shell激活flask虚拟环境后,调用flask shell能够使用虚拟环境的python解释器进入交互式环境,并且工作目录还保留在flask项目目录. f ...

  2. C语言--关于第0次作业

    你对网络专业或者计算机专业了解是怎样? 答:我认为网络专业或者计算机专业是网络管理.软件开发.程序设计等一些高等企业就业的基础知识.以及涉及到环境开发等的专业领域.知道它很难,但是社会对它的需求很高. ...

  3. Qt QDateEdit QDateTimeEdit

    展示一个效果,然后附上一个“笑话~~”...回想起来都是搞笑的. 笑话来了,,,,几个月前,为了做出时间选择界面,我亲自“创造”了一个...今天发现了QDateEdit的属性CalendarPopup ...

  4. POJ 1655 求树的重心

    POJ 1655 [题目链接]POJ 1655 [题目类型]求树的重心 &题意: 定义平衡数为去掉一个点其最大子树的结点个数,求给定树的最小平衡数和对应要删的点.其实就是求树的重心,找到一个点 ...

  5. nginx----------前端写了一套带有vue路由的的功能。放到nginx配置的目录下以后,刷新会报404未找到。

    1. 这是根据实际情况来写的. location /h5/activity/wechat/ {            index  index.html index.htm index.php;    ...

  6. php魔术变量以及命名空间

    魔术变量: PHP 向它运行的任何脚本提供了大量的预定义常量. 不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了. 有八个魔术常量它们 ...

  7. 解决Linux 环境 GLIBCXX_3.4.15' not found问题

    升级Centos系统之后,运行filezilla时,出现如下错误的提示信息: ./filezilla: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15 ...

  8. Linux常用操作指令(面试专用)

    Linux:免费开源,多用户多任务,衍生出很多附属版本,例如常用的RedHat... 常用指令 ls        显示文件或目录 -l           列出文件详细信息l(list) -a   ...

  9. subversion实用命令整理

    使用命令在仓库中创建目录 使用命令查看仓库中的内容 使用命令删除仓库中的内容 创建目录 svn mkdir --parents -m 'makeSubDirectory' file:///path/t ...

  10. IP通信基础学习第七周(下)

    H3C的配置指令包括:基本配置,查看指令,接口配置. 基本配置包括:查看可用指令:进入系统视图,全局配置模式:给设备命名:退回上一层模式:直接退回到用户模式. 查看指令包括:显示设备系统版本信息:显示 ...