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. 最好还是用#pragma once

    最好还是用#pragma once  https://www.cnblogs.com/techdreaming/p/4921780.html

  2. Java开发规范总结

     Service / DAO 层方法命名规约: 1 ) 获取单个对象的方法用 get 做前缀.2 ) 获取多个对象的方法用 list 做前缀.3 ) 获取统计值的方法用 count 做前缀.4 ) 插 ...

  3. Linux系统下的网络配置

    一.修改配置文件,重启后设置不丢失 [Red Hat Linux/CentOS] 使用ifconfig查看使用的网口: [root@localhost /]# ifconfig 修改对应网口配置文件: ...

  4. 如何从零开始系统化学习视觉SLAM?

    由于显示格式问题,建议阅读原文:如何从零开始系统化学习视觉SLAM? 什么是SLAM? SLAM是 Simultaneous Localization And Mapping的 英文首字母组合,一般翻 ...

  5. Hadoop组件

    ---------Hive--------------------------zooKeeper-------------------------------kafka---------------- ...

  6. PHP----------linux下安装opcache.

    1.首先查看是否安装了opcache扩展,使用php -m 命令查看安装的扩展(没有添加环境变量就使用:/usr/local/php/bin/php -m). 添加opcache扩展.(我自己封装的s ...

  7. debian9升级安装到python3.6和pip3.6

    安装步骤 1.添加testing源 vim /etc/apt/sources.list deb http://mirrors.163.com/debian/ testing main 2.更新源 ap ...

  8. 网络-01-端口号-linux端口详解大全

    0 | 无效端口,通常用于分析操作系统1 | 传输控制协议端口服务多路开关选择器2 | 管理实用程序3 | 压缩进程5 | 远程作业登录7 | 回显9 | 丢弃11 | 在线用户13 | 时间17 | ...

  9. json传实体到后台接受

    转自https://www.cnblogs.com/threadj/p/10535760.html 我用第一种是没问题的,第二种还不行,再研究一下 1.json参数为json字符串 var data ...

  10. POI兴趣点搜索 - 地理信息系统(6)

    (2017-08-13 银河统计) POI(Point of Interest),中文可以翻译为"兴趣点",兴趣点(POI)是地理信息系统中的一个术语,泛指一切可以抽象为点的地理对 ...