Ошибка при удалении статической трансляции
В качестве пограничного маршрутизатора между интернетом и локальной сетью стоит cisco, на которой настроены пробросы некоторых портов (в частности rdp) с внешнего ip-адреса, на ip внутренних хостов. При попытке удаления такой статической трансляции адресов в NAT cisco, выскочила ошибка:%: Error: static entry still in use, cannot remove . |
Вот так осуществляется трансляция с порта 3388 внешнего ip-адреса 12.34.56.78 на внутренний хост 10.0.100.8, порт rdp:
router#sh run | sec extendable router#ip nat inside source static tcp 10.0.100.8 3389 12.34.56.78 3388 extendable
При удалении этой трансляции сквозь NAT и появилась вышеуказанная ошибка:
router(config)#no ip nat inside source static tcp 10.0.100.8 3389 12.34.56.78 3388 extendable Static entry in use, do you want to delete child entries? [no]: yes %: Error: static entry still in use, cannot remove
Для устранения этого недоразумения необходимо очистить все динамические трансляции командой clear ip nat translation *
, после чего первоначальная задача выполнится без ошибки:
router(config)#do clear ip nat tra * router(config)#no ip nat inside source static tcp 10.0.100.8 3389 12.34.56.78 3388 extendable Static entry in use, do you want to delete child entries? [no]: yes router(config)#
Вредный совет, командой
clear ip nat translation *
Епнутся все нат сессии
поздний пост, но если вдруг кто-нибудь столкнется с такой проблемой, то не надо делать так, как описано выше.
Дать команду sh ip nat trans – 99% вы увидите внизу списка трансляций работающую сессию и под ней статическую сессию.
Даёте команду:
clear nat translation (udp/tcp) INSIDE aa.bb.cc.dd port aa.bb.cc.dd.ee port OUTSIDE aa.bb.cc.dd.ee port aa.bb.cc.dd.ee.port
Тем самым вы удалите сработавшую статическую трансляцию, после чего можно удалять само правило ip nat