ВОт могу дать на перле:
Код:
#!/usr/bin/perl -w
use Net::Telnet;
$login='логин';
$password='пароль:)';
my $exec =
$t = new Net::Telnet (Timeout => 30,
Prompt => '/#/',
Host => 'айписвитча' );
$t->login($login, $password);
print "config dhcp_relay add ipif System 10.0.0.101\n";
@lines = $t->cmd("config dhcp_relay add ipif System 10.0.0.101");
print "config dhcp_relay option_82 state enable\n";
@lines = $t->cmd("config dhcp_relay option_82 state enable");
print "config dhcp_relay option_82 policy keep\n";
@lines = $t->cmd("config dhcp_relay option_82 policy keep");
print "enable dhcp_relay\n";
@lines = $t->cmd("enable dhcp_relay");
print "Saving configuration, please wait...\n";
@lines = $t->cmd("save");
@lines = $t->cmd("logout");
print "Configuration sucssessfull added and logout switch.\n";
работает на ура, менял вышейказанную конфигурацию свитчей циклом while, свитчей было порядка 200 штук, все нормально настроились и засейфились...
п.с. Timeout => 30 советую не уменьшать, так как если свитч будет выполнять команду более указанного значения(секунды) то скрипт закончится неккоректно. Это может быть какраз при сейфе, у меня большинство сейфилось секунд 15, но есть экземпляры что и по 25 секунд сейфяца

изза большой нагрузки...