An examples should make this clearer. First sequential numbers. --synth-domain=thekelleys.org.uk,192.168.0.50,192.168.0.70,internal-* results in the name internal-0.thekelleys.org.uk. returning 192.168.0.50, internal-1.thekelleys.org.uk returning 192.168.0.51 and so on. (note the *) The same principle applies to IPv6 addresses (where the numbers may be very large). Reverse lookups from address to name behave as expected.
Second, --synth-domain=thekelleys.org.uk,192.168.0.0/24,internal- (no *) will result in a query for internal-192-168-0-56.thekelleys.org.uk returning 192.168.0.56 and a reverse query vice versa. The same applies to IPv6; the representation doesn't use the :: compression feature or the special representation of V4 mapped IPv6 addresses as these can generate illegal domain names, so all domains are of the form internal-1000-0000-0000-0000-0000-0000-0000-0008.example.com
The address range can be of the form <start address>,<end address> or <ip address>/<prefix-length> in both forms of the option. For IPv6 the start and end addresses must fall in the same /64 network, or prefix-length must be greater than or equal to 64 except that shorter prefix lengths than 64 are allowed only if non-sequential names are in use.