Bagaimana saya bisa mendapatkan netmask dari alamat IP?


Jawaban:


14

Ini tidak mungkin. Jika mungkin, tidak akan ada alasan untuk memiliki netmask sama sekali karena dapat ditentukan secara otomatis.

Netmask digunakan untuk menentukan rentang IP yang dimulai dan berhenti di 'jaringan'. Rentang ini arbitrer.

Misalnya, dengan alamat IP 192.168.0.140:
Dengan netmask 255.255.255.0( /24dalam notasi cidr) rentang IP akan menjadi 192.168.0.1 - 192.168.0.254.
Dengan netmask 255.255.255.128( /25dalam notasi cidr) rentang IP akan 192.168.0.129 - 192.168.0.254.


3

Anda tidak dapat dalam kebanyakan kasus, karena jaringan tanpa kelas . Alamat IPv4 yang diberikan dapat memiliki 30 netmask yang berbeda.


Dalam hal mana dalam sistem modern yang dapat Anda lakukan ini?
Karlson

Saya tidak sepenuhnya mengerti pertanyaannya, tetapi pada dasarnya semua sistem dan perangkat saat ini menggunakan CIDR.
SquareRootOfTwentyThree

@Karlson: Seperti kata Patrick, tidak ada cara untuk secara otomatis menentukan kapan Anda memiliki kasus yang termasuk dalam pengecualian untuk aturan ini. Anda dapat melihat oktet pertama dari alamat dan menebak secara membabi buta dari beberapa bit teratasnya bahwa itu adalah bagian dari kelas A, B, C ... atau jaringan apa pun tetapi Anda tidak dapat mengetahui pasti bahwa alamat tersebut berasal dari kelas tersebut , maka itu Anda tahu topeng bersih. Faktanya, dengan beberapa alamat, ini merupakan taruhan yang cerdas bahwa "kelas" gaya lama dari suatu alamat tidak relevan: alamat yang dimulai dengan 10 hampir tidak pernah kelas A (/ 8) karena mereka hampir selalu subnetted.
Warren Young

@SquareRootOfTwentyThree Pertanyaannya adalah apakah ada atau tidak cara berdasarkan IP dari sistem tujuan untuk menentukan netmask yang digunakan.
Karlson

@ WarrenYoung Saya mengetahui kelas alamat IP tetapi Anda dapat menebak topeng IP kelas memiliki (dan saya menebak di sini) kemungkinan lebih dari 99% salah.
Karlson

2

Meskipun Anda tidak dapat menentukan netmask dari alamat ip langsung di centos 7 Anda dapat mengetik "ip ad" yang akan mengembalikan alamat ip dengan nomor subnet yang sesuai.

-bash-4.2 $ ip ad 1: lo: mtu 65536 qdisc noqueue state UNKNOWN qlen 1

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

   valid_lft forever preferred_lft forever

inet6 ::1/128 scope host 

   valid_lft forever preferred_lft forever

2: eth0: mtu 1500 qdisc pfifo_fast state UP qlen 1000

link/ether 00:16:3e:77:ca:e9 brd ff:ff:ff:ff:ff:ff

**inet 10.1.0.11/24** brd 10.1.0.255 scope global eth0

   valid_lft forever preferred_lft forever

inet6 fe80::216:3eff:fe77:cae9/64 scope link 

   valid_lft forever preferred_lft forever

Nomor subnet juga disimpan dalam file berikut

/ etc / sysconfig / network-scripts / ifcfg-eth0 (di mana eth0 tergantung pada jenis kartu jaringan Anda)

Cari pengaturan PREFIX. Nomor yang disediakannya adalah subnet mask

misalnya PREFIX = 24

Jika tidak ada nomor PREFIX dalam file di atas maka pengaturan jaringan server Anda akan default ke subnet mask 8 yang lagi akan ditampilkan dari perintah "ip ad" Anda.

Jika Anda ingin mengubah nomor PREFIX, ingatlah untuk memulai kembali layanan jaringan menggunakan jaringan restart systemctl.


1

netmask terutama digunakan untuk membedakan alamat lokal di sub-jaringan yang sama dari alamat di luar yang hanya dapat dijangkau melalui gateway.

Jadi, jika Anda tahu semua (= saat ini atau di masa depan yang digunakan) alamat IP di sub-jaringan yang sama, Anda dapat membuat netmask yang berisi semuanya. Misalnya jika 192.168.2.4 dan 192.168.2.253 harus berada di sub-jaringan yang sama, netmask 255.255.255.0 (sama dengan kisaran ip 192.168.2.0-255 atau dalam notasi cidr 192.168.2.0/24) berfungsi.


@ WarrenYoung Terima kasih telah menunjukkan ini. Saya mengklarifikasi jawaban saya.
jofel

Maaf, tetapi "netmask 255.255.255.0" berarti bukan 192.168.2.1-255, tetapi 192.168.2.0-255 (jika kami akan menyertakan jaringan dan siaran) atau 192.168.2.1-254 (jika tidak kami sertakan)
Lazy Badger
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.