ipv4_is_match()
Mencocokkan dua string IPv4. Dua string IPv4 diuraikan dan dibandingkan saat menghitung gabungan mask prefiks IP yang dihitung dari prefiks argumen, dan argumen prefix
opsional.
Sintaks
ipv4_is_match(
awalan ip1,
ip2[ ,
])
Pelajari selengkapnya tentang konvensi sintaksis.
Parameter
Nama | Tipe | Wajib | Deskripsi |
---|---|---|---|
ip1, ip2 | string |
✔️ | Ekspresi yang mewakili alamat IPv4. Nilai IPv4 dapat di-mask menggunakan notasi prefiks IP. |
Awalan | int |
Bilangan bulat dari 0 hingga 32 yang mewakili jumlah bit paling signifikan yang diperhitungkan. |
Notasi awalan IP
Notasi awalan IP (juga dikenal sebagai notasi CIDR) adalah cara ringkas untuk mewakili alamat IP dan masker jaringan terkait. Formatnya adalah <base IP>/<prefix length>
, di mana panjang awalan adalah jumlah 1 bit di depan dalam netmask. Panjang awalan menentukan rentang alamat IP milik jaringan.
Untuk IPv4, panjang awalan adalah angka antara 0 dan 32. Jadi notasi 192.168.2.0/24 mewakili alamat IP 192.168.2.0 dengan netmask 255.255.255.0. Netmask ini memiliki 24 bit terkemuka, atau panjang awalan 24.
Untuk IPv6, panjang awalan adalah angka antara 0 dan 128. Jadi notasi fe80::85d:e82c:9446:7994/120 mewakili alamat IP fe80::85d:e82c:9446:7994 dengan netmask ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ff00. Netmask ini memiliki 120 1 bit terkemuka, atau panjang awalan 120.
Mengembalikan
true
: Jika representasi panjang dari argumen string IPv4 setara dengan argumen string iPv4 kedua.false
: Sebaliknya.null
: Jika konversi untuk salah satu dari dua string iPv4 tidak berhasil.
Catatan
Saat mencocokkan dengan alamat IPv4 yang bukan suatu rentang, sebaiknya gunakan operator yang sama (==
) demi meningkatkan performanya.
Contoh
Contoh sederhana
print ipv4_is_match('192.168.1.1/24', '192.168.1.255')
Hasil
print_0 |
---|
benar |
Kesetaraan perbandingan IPv4 - Notasi prefiks IP yang ditentukan di dalam string IPv4
datatable(ip1_string:string, ip2_string:string)
[
'192.168.1.0', '192.168.1.0', // Equal IPs
'192.168.1.1/24', '192.168.1.255', // 24 bit IP-prefix is used for comparison
'192.168.1.1', '192.168.1.255/24', // 24 bit IP-prefix is used for comparison
'192.168.1.1/30', '192.168.1.255/24', // 24 bit IP-prefix is used for comparison
]
| extend result = ipv4_is_match(ip1_string, ip2_string)
Hasil
ip1_string | ip2_string | hasil |
---|---|---|
192.168.1.0 | 192.168.1.0 | benar |
192.168.1.1/24 | 192.168.1.255 | benar |
192.168.1.1 | 192.168.1.255/24 | benar |
192.168.1.1/30 | 192.168.1.255/24 | benar |
Kesetaraan perbandingan IPv4 - Notasi prefiks IP yang ditentukan di dalam string IPv4 dan argumen tambahan dari fungsi ipv4_is_match()
datatable(ip1_string:string, ip2_string:string, prefix:long)
[
'192.168.1.1', '192.168.1.0', 31, // 31 bit IP-prefix is used for comparison
'192.168.1.1/24', '192.168.1.255', 31, // 24 bit IP-prefix is used for comparison
'192.168.1.1', '192.168.1.255', 24, // 24 bit IP-prefix is used for comparison
]
| extend result = ipv4_is_match(ip1_string, ip2_string, prefix)
Hasil
ip1_string | ip2_string | awalan | hasil |
---|---|---|---|
192.168.1.1 | 192.168.1.0 | 31 | benar |
192.168.1.1/24 | 192.168.1.255 | 31 | benar |
192.168.1.1 | 192.168.1.255 | 24 | benar |
Konten terkait
- Gambaran umum fungsi IPv4/IPv6
- Gambaran umum fungsi kecocokan teks IPv4
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk