ip dhcp pool somepoolname
network 192.168.3.0 255.255.255.0
option 249 hex xxxx.yyyy.zzzz........
либо
option 249 ip 24.192.168.1 192.168.3.1 24.192.168.2 192.168.3.1
lease 0 2
Таким образом, мы выдаем айпишники из пула 192.168.3.0/255.255.255.0 , указывая, что к подсетям 192.168.1.0/255.255.255.0 и 192.168.2.0/255.255.255.0 надо идти через шлюз 192.168.3.1
option 249 hex вычислить несложно, имея под рукой скрипт:
#!/usr/bin/perl -w
use strict;
sub option_121 {
my $gw = shift;
my $out_str = '';
my ($subnet, $mask, $b0, $b1, $b2, $b3);
foreach my $cidr (@_) {
($subnet, $mask) = split('/', $cidr);
($b0, $b1, $b2, $b3) = split(/\./,$subnet);
$out_str .= sprintf('%02x', $mask);
$out_str .= sprintf('%02x', $b0);
$out_str .= sprintf('%02x', $b1) if($mask > 8);
$out_str .= sprintf('%02x', $b2)
if($mask > 16);
$out_str .= sprintf('%02x', $b3) if($mask > 24);
$out_str .= sprintf('%02x%02x%02x%02x', split(/\./,$gw));
}
return $out_str;
}
if(@ARGV < 2)
{
print "Usage: $0 gw_ip subnet1/mask1 subnet2/mask2 ... subnetN/maskN\n";
}
elsif($ARGV[0] =~ /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/)
{
print "DHCP option 121 (249) hex string: ".option_121(@ARGV)."\n";
}
Комментариев нет:
Отправить комментарий