proc validIp { ip } { set passed "1" set newIp "" set ip [split $ip "."] if { [llength $ip] == "4" } { foreach octet $ip { if { $octet > 255 } { return "INVALID" } if { [string match {*\[*-*\]*} $octet] } { append newIp "0 " break } if { (![string match {[0-9]*} $octet]) && ($octet != "*") } { return "INVALID" } append newIp "$octet " } } else { return "INVALID" } regsub -all " " [string trim $newIp] "." newIp return "$newIp" }