FortiOS config diff explainer

Two configurations in, a structural diff out. A moved block is not a change, except in the sections where order is the behaviour.

Networking

Runs entirely in your browser. Nothing is uploaded.

How this differs from a line diff

  • Paste two configurations separated by a line containing only --- , or use the labels BEFORE: and AFTER: on their own lines.
  • This compares STRUCTURE, not text. A block that moved is not reported as a deletion plus an insertion, and a setting that changed is one line naming the old and new value.
  • For most sections the order of objects is irrelevant and is ignored. For firewall policy and its relatives, order IS the behaviour, so a reordering there is reported as a real change even when no setting differs.
  • Nested config blocks inside an object are parsed, and their settings are prefixed so they cannot collide with a same-named setting on the parent.
API endpointGEThttps://ronutz.com/api/v1/fortios-config-diff-explainerDocumented, not served. Opens the specification.

References