本文目录一览:
- 1、JAVA 访问交换机的连接状态
- 2、java ssh登陆交换机执行命令
- 3、java在调用telnet命令后。登录了交换机,想显示当前交换机的配置。怎么将这些配置全部得到???
- 4、怎么在CMD登陆交换机 路由器
- 5、如何进入交换机界面
- 6、怎么通过java远程登录su h3c交换机
JAVA 访问交换机的连接状态
文件传输协议(File Transfer Protocol, FTP)FTP是用于在网络上进行文件传输的一套标准协议。它属于网络协议组的应用层。
java ssh登陆交换机执行命令
第一步下载java扩展包
第二步:解压文件把 jar包,拷贝到java的库目录下,我的是ubuntu14(/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext )
cp ganymed-ssh2-build210.jar /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext
第三步: 把默认账户修改成直接的账户密码
yang@yang:~/Downloads/java/ganymed-ssh2-build210/examples$ cat Basic.java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import ch.ethz.ssh2.Connection;
import ch.ethz.ssh2.Session;
import ch.ethz.ssh2.StreamGobbler;
public class Basic
{
public static void main(String[] args)
{
String hostname = "127.0.0.1";
String username = "user";
String password = "password";
try
{
Connection conn = new Connection(hostname);
conn.connect();
boolean isAuthenticated = conn.authenticateWithPassword(username, password);
if (isAuthenticated == false)
throw new IOException("Authentication failed.");
Session sess = conn.openSession();
sess.execCommand("uname -a date uptime who");
System.out.println("Here is some information about the remote host:");
InputStream stdout = new StreamGobbler(sess.getStdout());
BufferedReader br = new BufferedReader(new InputStreamReader(stdout));
while (true)
{
String line = br.readLine();
if (line == null)
break;
System.out.println(line);
}
System.out.println("ExitCode: " + sess.getExitStatus());
sess.close();
conn.close();
}
catch (IOException e)
{
e.printStackTrace(System.err);
System.exit(2);
}
}
}
第四步: 编译 javac Basic.java java Basic
Here is some information about the remote host:
Linux yang 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
2014年 05月 03日 星期六 17:26:00 CST
17:26:00 up 6:09, 4 users, load average: 0.15, 0.21, 0.23
yang :0 2014-05-03 11:17 (:0)
yang pts/2 2014-05-03 16:34 (:0)
yang pts/26 2014-05-03 17:13 (:0)
yang pts/27 2014-05-03 17:24 (:0)
ExitCode: 0
java在调用telnet命令后。登录了交换机,想显示当前交换机的配置。怎么将这些配置全部得到???
JAVA有开源的SNMP开发包,使用它,你可以与路由器,交换机进行通信。
最后,,这个是java snmp 开源开发包。
怎么在CMD登陆交换机 路由器
这是网络设备的一种远程管理方式,一般使用Telnet登录,具体过程如下:
在路由器或交换机上配置Telnet登录账户与密码及权限等;
在电脑上使用Telnet IP地址 登录到路由器或交换机,其他IP地址是路由器或交换机的管理IP地址;
在登录接口输入管理用户名及密码,注意密码是不显示的。输入正确后就可以进入路由器或交换机的管理界面,可以根据你的权限对其进行管理配置;
如果没有在路由器或交换机上配置Telnet登录密码,默认情况下是不允许远程登录路由器或交换机的,这个是一种安全策略。
如何进入交换机界面
有三种配置方式:
一、使用控制端口配置交换机
步骤:
1、使用控制端口线将异步串行口与交换机连接,配置超级终端为直接连接,连接端口与控制端口线的物理连接一致
2、在windowsxp中,【开始】—【程序】—【附件】—【超级终端】,进入新建连接的“连接描述”窗口
3、在“连接窗口”的名称框内输入新建连接名
【确定】进入“连接到窗口”
在“连接到使用”一栏选择连接端口(与上的控制端口的物理端口一致)
4、对端口(与上的控制端口的物理端口一致)属性进行逐一设置
5、完成上述过程后对交换机加电,在配置终端按回车进入交换机配置
二、使用telnet配置交换机
必备条件:
1、作为模拟终端的计算机与交换机都必须与网络连通,他们之间能通过网络进行通信
2、计算机必须有访问交换机的权限
3、交换机必须预先配置好设备管理地址,包括ip地址
子网掩码和缺省路由
4.交换机必须预先配置好控制远程登录的密码
步骤:
进入“运行”窗口
输入“telnet”命令(格式为:telnet交换机的设备管理地址)
三、使用浏览器配置交换机
必备条件;
1、在用于配置的计算机和被管理的交换机上都已经配置好ip地址,他们之间能够通过网络进行通信
2、被管理的交换机必须支持HTTP服务,并已启动该服务
3、在用于管理的计算机中必须安装有支持Java的web浏览器,如Internet
explorer4.0及以上版本
Netscape4.0及以上版本
4、在用于管理的计算机上,需要下载并安装Java-plogin
5、在被管理的交换机上,需拥有管理权限的用户账号和密码
步骤:
1、启用交换机的HTTP
server
2、配置HTTP用户认证方式
3、下载安装Java-plogin插件(这个先打开交换机主页依次来就可以)
以上就是我了解的一些关于交换机配置的内容,希望能够帮到你。(*^__^*)
……
怎么通过java远程登录su h3c交换机
/*我想这就是你想要的telnet吧,既然我下面用的是apache开源包,你下来自己
*看看能不能自己重写。方法已经给你提供了。
*要是可以的话结题吧.哈O(∩_∩)
*/
import java.io.InputStream;
import java.io.PrintStream;
import org.apache.commons.net.telnet.TelnetClient;
/**
* 利用apache net 开源包,使用telnet方式获取AIX主机信息
* @version 1.2
*/
public class NetTelnet {
// Telnet对象
private TelnetClient telnet = new TelnetClient();
private InputStream in;
private PrintStream out;
// 提示符。具体请telnet到AIX主机查看
private char prompt = '#';
// telnet端口
private String port;
// 用户
private String user;
// 密码
private String password;
// IP地址
private String ip;
public NetTelnet() {
try {
// AIX主机IP
this.ip = "219.243.12.10";
this.password = "05933663007";
this.user = "administrator";
this.port = "23";
telnet.connect(ip, Integer.parseInt(port));
System.out.println("开始获取输入流...");
in = telnet.getInputStream();
out = new PrintStream(telnet.getOutputStream());
// 登录
/* readUntil("login: ");
write(user);
readUntil("Password: ");
write(password);
readUntil(prompt + " ");*/
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 读取分析结果
*
* @param pattern
* @return
*/
public String readUntil(String pattern) {
try {
char lastChar = pattern.charAt(pattern.length() - 1);
StringBuffer sb = new StringBuffer();
char ch = (char) in.read();
while (true) {
sb.append(ch);
if (ch == lastChar) {
if (sb.toString().endsWith(pattern)) {
return sb.toString();
}
}
ch = (char) in.read();
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
/**
* 写
*
* @param value
*/
public void write(String value) {
try {
out.println(value);
out.flush();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 向目标发送命令字符串
*
* @param command
* @return
*/
public String sendCommand(String command) {
try {
write(command);
return readUntil(prompt + " ");
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
/**
* 关闭连接
*
*/
public void disconnect() {
try {
telnet.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
try {
System.out.println("开始执行telnet......");
NetTelnet telnet = new NetTelnet();
// 通过aix的命令“查找主机名称”获取数据
// 命令是 "hostname"
// 不熟悉命令的参考AIX网络管理手册
System.out.println("开始发送hostname命令");
String result = telnet.sendCommand("hostname");
System.out.println("显示结果");
System.out.println(result);
// 最后一定要关闭
telnet.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
}