Write a proc to increment the ip by the given no. of times.
The incremented IPs should be a valid one.
Ex: proc <name> {ip no_of_incrments} {
body
}
Answer Posted / jasmin
proc increment_ip {ip no_of_inc} {
puts "ip..... $ip"
for {set inc 1} {$inc<=$no_of_inc} {incr
inc} {
set ip_list [split $ip .]
set oct1 [lindex $ip_list 0]
set oct2 [lindex $ip_list 1]
set oct3 [lindex $ip_list 2]
set oct4 [lindex $ip_list 3]
incr oct4
if {$oct4>255} {
set oct4 0
incr oct3
if
{$oct3>255} {
set oct3 0
incr oct2
if {$oct2>255} {
set oct2 0
incr oct1
if {$oct1>255} {
incr oct1 -1
puts "cannot increment
ip"
exit
}
}
}
}
set ip $oct1.$oct2.$oct3.$oct4
}
puts "new ip .... $oct1.$oct2.$oct3.$oct4"
}
increment_ip 10.10.10.1 10
Is This Answer Correct ? | 1 Yes | 3 No |
Post New Answer View All Answers