Changed remove/re-add of old servers to add, which updates the existing entry.
Code:
alias parse.servers {
  var %i = 1
  while $server(%i) {
    [color:green]; loop through servers.ini[/color]
    var %a = $ifmatch
    [color:green]; check network, and if IP address[/color]
    if $server(%a).group != $network || $regex(%a,/^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})$/) {
      inc %i | continue
    }
    [color:green]; check if in @Links, if not re-add as "old network"[/color]
    [color:blue]if !$fline(@Links,$+(*,%a,*),1) { .server -a %a -g old }[/color]
    inc %i
  }
  var %i = 1
  while $line(@Links,%i) {
    [color:green]; loop through @Links[/color]
    tokenize 32 $ifmatch
    [color:green]; check for and skip hub servers[/color]
    if $istok($2-,HUB,32) || $istok($1,hub,46) { inc %i | continue }
    [color:green]; check and add to servers.ini if needed[/color]
    [color:blue]; Here you could add -p <ports to use> if you wish[/color]
    if !$server($1) { .server -a $1 -g $network -d $gettok($1,1,46) }
    inc %i
  }
  [color:green]; sort servers.ini[/color]
  server -s
}