Именно этот конфиг на данный момент сложно реализовать эффективно.
Можно будет сделать такой:
  geo good_networks {
     default      0;
     include      /path/to/netlist;
     127.0.0.0/30 7;
  }
  server {
      location / {
          root   /path/to/docroot;
          if (not $good_networks) {
              limit_rate    100k;
          }
      }
  }
То есть, на уровне сервера можно будет делать if (...) { rewrite ... },
а вот задавать помимо rewrite обычные директивы внутри if() можно будет
только на уровне location.
И ещё, geo задаётся только на уровне http.