Přeskočit obsah

Výrazy pro IP adresy¤

IP adresy jsou interně reprezentovány jako 128bitová celá čísla bez znaménka. Takový typ může obsahovat jak IPv6, tak IPv4. IPv4 jsou mapovány do prostoru IPv6 pomocí RFC 4291 "IPv4-Mapped IPv6 Address".


!IP.FORMAT: Převádí IP adresu na řetězec¤

Typ: Mapping.

Synopsis:

!IP.FORMAT
what: <ip>

Převádí vnitřní reprezentaci IP adresy na řetězec.


!IP.INSUBNET: Zkontroluje, zda IP adresa spadá do podsítě¤

Typ: Mapping.

Synopsis:

!IP.INSUBNET
what: <ip>
subnet: <subnet>
!IP.INSUBNET
what: <ip>
subnet:
  - <string>
  - <string>
  - <string>

Testuje, zda what IP adresa patří do subnet nebo podsítí, vrací true, pokud ano, jinak false.

Příklad s jednou podsítí

!IP.INSUBNET
what: 192.168.1.1
subnet: 192.168.0.0/16

Příklad s více podsítěmi

!IP.INSUBNET
what: 1.2.3.4
subnet:
- 10.0.0.0/8
- 172.16.0.0/12
- 192.168.0.0/16

Test, který kontroluje, zda adresa IP pochází z privátního adresního prostoru IPv4, jak je definováno v RFC 1918.

Kompaktní forma:

!IP.INSUBNET
what: 1.2.3.4
subnet: [10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16]

Parsování IP adresy¤

IP adresa je automaticky analyzována z řetězce. V případě potřeby můžete IP adresu z řetězce explicitně převést na typ ip:

!CAST
type: ip
what: 192.168.1.1

Parsování podsítě IP¤

IP podsíť je automaticky parsována z řetězce. V případě potřeby lze explicitně převést IP adresu z řetězce na typ ipsubnet:

!CAST
type: ipsubnet
what: 192.168.1.1/16