Bagaimana cara menempatkan dua subnet di samping satu sama lain?

10

Saya telah menggunakan kalkulator ini http://www.subnet-calculator.com/cidr.php , dan saya mencoba mencari cara untuk menempatkan dua subnet yang berbeda di samping satu sama lain.

Sebagai contoh, saya ingin memiliki / 27 subnet mulai dari 1.0.0.1, di samping / 25, jadi saya berpikir bahwa / 25 subnet akan mulai pada 1.0.0.32, karena itu adalah salah satu di luar subnet / 27. Namun, ketika saya mencoba dan melakukan ini, kalkulator mengatakan bahwa kisaran untuk / 25 adalah 1.0.0.1-1.0.0.127, tidak dimulai dari 0,32.

Apakah ini batasan kalkulator atau bagaimana Anda menempatkan subnet di samping satu sama lain?

EDIT : Saya kira pertanyaan saya adalah subnet apa yang bisa bersebelahan? Apa yang menentukan ini?

instipod
sumber
Anda tidak dapat memiliki / 25 mulai dari 1.0.0.32, jika itu yang Anda tanyakan. Ingat bahwa subnet bukan rentang arbitrer, mereka hanya cara untuk membedakan nomor host dari nomor jaringan.
BatchyX
Saya kira pertanyaan saya adalah subnet apa yang bisa bersebelahan? Apakah ada dokumen atau referensi yang bisa dituju?
instipod
2
Saya sarankan Anda membaca tentang bitmask, maka Anda akan mengerti apa itu subnet mask.
BatchyX

Jawaban:

7

Anda perlu membedakan alamat mulai subnet dan ukuran subnet . Angka di belakang garis miring adalah ukuran (dalam 32-x bit). Jadi Anda dapat memiliki dua / 27 subnet seperti ini

10.0.0.1/27  == 10.0.0.1  -> 10.0.0.30
10.0.0.33/27 == 10.0.0.33 -> 10.0.0.62

tetapi a / 27 dan / 25 subnet dengan cara yang sama akan berarti memulai / 25 di alamat kemudian

10.0.0.1/27   == 10.0.0.1   -> 10.0.0.30
10.0.0.129/25 == 10.0.0.129 -> 10.0.0.254

karena / 25 subnet "membutuhkan" lebih banyak ruang. Anda tidak dapat memulai / 25 subnet di alamat yang arbitrer, hanya pada batas yang benar:

10.0.0.1/25   == 10.0.0.1   -> 10.0.0.126
10.0.0.129/25 == 10.0.0.129 -> 10.0.0.254

tapi perhatikan itu

10.0.0.33/25   == 10.0.0.1   -> 10.0.0.126

karena 10.0.0.33/25hanya cara lain untuk mengatakan 10.0.0.1/25atau 10.0.0.0/25.

Anda juga dapat memutuskan untuk "mengisi" ruang antara Anda / 27 dan subnet / 25 Anda dengan lebih / 27 subnet:

10.0.0.1/27   == 10.0.0.1   -> 10.0.0.30
10.0.0.33/27  == 10.0.0.33  -> 10.0.0.62
10.0.0.65/27  == 10.0.0.65  -> 10.0.0.94
10.0.0.97/27  == 10.0.0.97  -> 10.0.0.126
10.0.0.129/25 == 10.0.0.129 -> 10.0.0.254

atau dengan yang lain / 27 dan / 26:

10.0.0.1/27   == 10.0.0.1   -> 10.0.0.30
10.0.0.33/27  == 10.0.0.33  -> 10.0.0.62
10.0.0.65/26  == 10.0.0.65  -> 10.0.0.126
10.0.0.129/25 == 10.0.0.129 -> 10.0.0.254
Stefan Seidel
sumber
1
Subnet menyertakan alamat jaringan dan alamat broadcast ... Anda tidak memiliki IP yang tidak digunakan di antara subnet yang berdekatan. Dan mencoba menjelaskan mengapa beberapa subnet dapat digabungkan menjadi topeng yang lebih pendek tanpa matematika biner benar-benar menyesatkan.
cpt_fink
4

Prefiks / subnet menggunakan logika biner. Subnet ditentukan oleh bit yang diperbaiki dan bit yang dapat digunakan untuk alamat. Jumlah bit tetap adalah panjang awalan atau subnet mask. Beberapa contoh IPv4:

Prefix:           10.0.0.0/8
Prefix length:    8
Subnet mask:      255.0.0.0
Prefix bits:      00001010 00000000 00000000 00000000 = 10.0.0.0
Subnet mask bits: 11111111 00000000 00000000 00000000 = 255.0.0.0

A 1dalam bit subnet mask menunjukkan bahwa bit yang sesuai diperbaiki, dan 0menunjukkan bahwa Anda dapat menggunakan bit itu. Panjang awalan adalah jumlah bit yang ditetapkan 1, dan subnet mask adalah nomor biner yang dituliskan sebagai alamat IPv4.

Jadi, dalam contoh ini Anda dapat menggunakan:

First address in the prefix: 00001010 00000000 00000000 00000000 = 10.0.0.0
Last address in the prefix:  00001010 11111111 11111111 11111111 = 10.255.255.255

Contoh lain dengan panjang awalan yang berbeda:

Prefix:           10.0.0.0/10
Prefix length:    10
Subnet mask:      255.192.0.0
Prefix bits:      00001010 00000000 00000000 00000000 = 10.0.0.0
Subnet mask bits: 11111111 11000000 00000000 00000000 = 255.192.0.0

Dalam contoh ini Anda dapat menggunakan lebih sedikit alamat:

First address in the prefix: 00001010 00000000 00000000 00000000 = 10.0.0.0
Last address in the prefix:  00001010 00111111 11111111 11111111 = 10.63.255.255

Seperti yang Anda lihat, subnet ditentukan oleh nilai dan jumlah bit yang diperbaiki. Saat menggunakan contoh 1.0.0.32/25Anda, Anda mendapatkan:

Prefix:           1.0.0.32/25
Prefix length:    25
Subnet mask:      255.255.255.128
Prefix bits:      00000001 00000000 00000000 00100000 = 10.0.0.32
Subnet mask bits: 11111111 11111111 11111111 10000000 = 255.255.255.128

First address in the prefix: 00000001 00000000 00000000 00000000 = 1.0.0.0
Last address in the prefix:  00000001 00000000 00000000 01111111 = 1.0.0.127

Nilai 32 berada di tengah bit fleksibel. Saat melihat /25awalan yang Anda dapatkan:

Prefix length:      25
Subnet mask bits:   11111111 11111111 11111111 10000000

1st /25 in 1.0.0.0: 00000001 00000000 00000000 00000000 = 1.0.0.0/25
2nd /25 in 1.0.0.0: 00000001 00000000 00000000 10000000 = 1.0.0.128/25
3rd /25 in 1.0.0.0: 00000001 00000000 00000001 00000000 = 1.0.1.0/25
4th /25 in 1.0.0.0: 00000001 00000000 00000001 10000000 = 1.0.1.128/25
5th /25 in 1.0.0.0: 00000001 00000000 00000010 00000000 = 1.0.2.0/25
Etc.

Saat melihat /27awalan yang Anda dapatkan:

Prefix length:      27
Subnet mask bits:   11111111 11111111 11111111 11100000

1st /25 in 1.0.0.0: 00000001 00000000 00000000 00000000 = 1.0.0.0/27
2nd /25 in 1.0.0.0: 00000001 00000000 00000000 00100000 = 1.0.0.32/27
3rd /25 in 1.0.0.0: 00000001 00000000 00000000 01000000 = 1.0.0.64/27
4th /25 in 1.0.0.0: 00000001 00000000 00000000 01100000 = 1.0.0.96/27
5th /25 in 1.0.0.0: 00000001 00000000 00000000 10000000 = 1.0.0.128/27
Etc.

Dalam subnet IPv4 alamat pertama (bit fleksibel semua 0) dicadangkan dan disebut alamat jaringan. Alamat terakhir (bit fleksibel semua 1) adalah alamat broadcast subnet. Anda tidak dapat menggunakannya untuk antarmuka jaringan pada perangkat.

Jika Anda ingin meletakkan beberapa subnet di samping satu sama lain, Anda harus memastikan bahwa mereka tidak tumpang tindih. Ketika Anda tidak memiliki banyak ruang alamat seperti dengan IPv4 membuat semua subnet cocok bisa menjadi proses yang sangat sulit, dan menjaganya agar tetap dikelola ketika mengubah rencana pengalamatan bahkan lebih sulit. Itulah sebabnya IPv6 sangat baik untuk digunakan: banyak ruang alamat, dan sebuah subnet biasanya a /64(dimungkinkan untuk menggunakan panjang awalan yang berbeda tetapi hal itu memecah beberapa hal seperti konfigurasi otomatis).

Jika Anda tertarik pada rencana pengalamatan IPv6 maka lihatlah dokumen 'Menyiapkan Rencana Pengalamatan IPv6' yang saya tulis beberapa tahun lalu untuk SURFnet (Jaringan Riset dan Pendidikan Nasional Belanda). Cara subnetting bekerja di IPv6 persis sama dengan untuk IPv4, kecuali jumlahnya jauh lebih besar dan ditulis dalam heksadesimal (yang sesuai dengan bit lebih baik daripada notasi desimal yang digunakan untuk IPv4!). Panjang awalan, memiliki bit yang tetap dan fleksibel semua bekerja dengan cara yang persis sama. Contoh singkat:

Prefix:           2001:0db8:0000:0000:0000:0000:0000:0000/64
Prefix length:    64
Subnet mask:      not really used anymore in IPv6, but it would have been:
                  ffff:ffff:ffff:ffff:0000:0000:0000:0000
Prefix bits:      0010 0000 0000 0001 0000 1101 1011 1000 = 2001:0db8
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
Subnet mask bits: 1111 1111 1111 1111 1111 1111 1111 1111 = ffff:ffff
                  1111 1111 1111 1111 1111 1111 1111 1111 = ffff:ffff
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000

First address in the prefix:
                  0010 0000 0000 0001 0000 1101 1011 1000 = 2001:0db8
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
Last address in the prefix:
                  0010 0000 0000 0001 0000 1101 1011 1000 = 2001:0db8
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
                  1111 1111 1111 1111 1111 1111 1111 1111 = ffff:ffff
                  1111 1111 1111 1111 1111 1111 1111 1111 = ffff:ffff

So from 2001:0db8:0000:0000:0000:0000:0000:0000
     to 2001:0db8:0000:0000:ffff:ffff:ffff:ffff

PS: Saya sengaja tidak menggunakan notasi yang direkomendasikan / kanonik. Biasanya Anda mengompres nol di alamat dan menulis 2001:0db8:0000:0000:0000:0000:0000:0000sebagai 2001:db8::, 2001:0db8:0000:0000:0000:0000:0000:0001ditulis sebagai 2001:db8::1, dll.

Sander Steffann
sumber
1
  • Untuk a / 24, oktet terakhir (biasanya dicadangkan) untuk jaringan adalah .0 dan hanya .0. 1 subnet

  • Untuk a / 25, maka dapat berupa .0 atau .128. 2 subnets

  • Untuk a / 26, bisa berupa .0, .64, .128, atau .192. 4 subnets

  • Untuk a / 27, bisa berupa 0,0, .32, .64, .96, .128, .160, .192, atau .224. 8 subnets

  • untuk a / 28, .0, .16, .32, .48, .64, .80, .112, .128, .144, .160, .176, .192, .208, .224, atau .240. 16 subnets

  • untuk a / 29, .0, .8, .16, .24, .32, .40, .48, .56, .64, .72, .80, .88, .96, .104, .112, .120, .128, .136, .144, .152, .160, .168, .176, .184, .192, .200, .208, .216, .224, .232, .240, atau. 248 32 subnets

  • Awalan / 30 biasanya ditemukan pada antarmuka point-to-point. 64 subnets

  • Awalan / 31 tidak umum ditemukan di alam bebas, karena tidak memiliki host yang dapat dialamatkan, karena hanya mencakup 2 nomor jaringan, "jaringan" dan "siaran" tanpa ruang untuk IP host. 128 subnets(semua angka genap antara 0 dan 254)

  • Awalan / 32 digunakan untuk menentukan rute untuk satu host. Ini adalah rute yang paling spesifik dan jika ada, harus lebih diutamakan dari semua entri tabel rute lain yang bukan juga 32 /. A / 32 tidak memiliki alamat 'jaringan' atau 'siaran'. 256 subnets (0 dan 255 mungkin tidak berfungsi pada beberapa implementasi)

Nevin Williams
sumber
0

Cara sederhana untuk memahaminya:

Dalam IPv4:

Bayangkan sebaris 256 * 256 * 256 * 256 (Atau 2 ^ 32) alamat IP yang memungkinkan.

[] [] [] [] .................. [] [] []
       256*256*256*256 total IP adresses

Subnet mask ini memiliki 0.0.0.0 (atau 0000 0000 0000 0000 0000 0000 0000 0000 dalam biner)
Semua bit yang tidak bertopeng dapat digunakan untuk memberikan alamat IP di jaringan itu.

Alamat yang mungkin di jaringan tunggal itu adalah:

0000 0000 0000 0000 0000 0000 0000 (<- NETMASK, tidak menutupi apa pun di sini ...)

0000 0000 0000 0000 0000 0000 0000 (IP 0.0.0.0) hingga
1111 1111 1111 1111 1111 1111 1111 1111 (IP 255.255.255.255)

Seluruh jaringan ini mulai dari IP 0.0.0.0, dan berlanjut hingga IP 255.255.255.255

Setiap bit dalam subnet mask akan membagi baris menjadi 2 bagian yang sama.

Bit pertama dalam subnet mask akan membaginya dalam 2 bagian yang sama, masing-masing dengan 128 * 256 * 256 * 256 (atau 2 ^ 31) alamat IP:

[] [] [] .......... [] [] []  |  [] [] ........... [] []
128*256*256*256 IP Adresses       128*256*256*256 IP Adr

Ini memiliki subnet mask 128.0.0.0 (atau 1000 0000 0000 0000 0000 0000 0000 0000 dalam biner)
Semua bit yang tidak bertopeng dapat digunakan untuk memberikan alamat IP di jaringan itu.

Jadi Anda dapat memiliki 2 subnet, dan untuk setiap subnet, Anda memiliki 31 bit alamat IP yang tersedia.

Untuk subnet pertama (yang di mana, di belakang netmask, adalah '0')

1000 0000 0000 0000 0000 0000 0000 0000 (<- NETMASK)

0000 0000 0000 0000 0000 0000 0000 (IP 0.0.0.0) hingga
0111 1111 1111 1111 1111 1111 1111 1111 (IP 127.255.255.255)

dan untuk subnet ke-2 (yang mana, di belakang netmask, adalah '1')

1000 0000 0000 0000 0000 0000 0000 0000 (<- NETMASK)

1000 0000 0000 0000 0000 0000 0000 (IP 128.0.0.0) hingga
1111 1111 1111 1111 1111 1111 1111 1111 (IP 255.255.255.255)

Bit tambahan berikutnya dalam subnet mask membagi kedua sisi dalam 2 bagian yang sama dari 2 ^ 30 IP Alamat masing-masing

Dan seterusnya...

Jadi jika Anda mencoba untuk menetapkan, katakanlah, sebuah subnet dari / 3, itu berarti Anda menghabiskan 3 pembagian iterasi, berakhir dengan 2 ^ 3 = 8 subnet. Setiap subnet hanya bisa menjadi salah satu dari 8 subdivisi dari seluruh lini mesin. Mereka tidak bisa tumpang tindih. Masing-masing dimulai setelah yang pertama.

[] ... [] | [] ... [] | [] ... [] | [] ... [] | [] ... [] | [] ... [] | [] ... [] | [] ... []
32*256*256*256 or 2^30 IP Adresses each.

Ini memiliki subnet mask 0.0.0.0

Jadi untuk subnet pertama (yang mana, di belakang netmask, adalah '000')

1110 0000 0000 0000 0000 0000 0000 0000 (<- NETMASK)

0000 0000 0000 0000 0000 0000 0000 (IP 0.0.0.0) hingga
0001 1111 1111 1111 1111 1111 1111 1111 (IP 31.255.255.255)

dan untuk subnet ke-2 (yang mana, di belakang netmask, adalah '001')

1110 0000 0000 0000 0000 0000 0000 0000 (NETMASK)

0010 0000 0000 0000 0000 0000 0000 (IP 32.0.0.0) hingga
0011 1111 1111 1111 1111 1111 1111 1111 (IP 63.255.255.255)

...

dan untuk subnet ke-7 (yang mana, di belakang netmask, adalah '110')

1110 0000 0000 0000 0000 0000 0000 0000 (NETMASK)

1100 0000 0000 0000 0000 0000 0000 (IP 192.0.0.0) hingga
1101 1111 1111 1111 1111 1111 1111 1111 (IP 223.255.255.255)

dan untuk subnet ke-8 (yang di mana, di belakang netmask, adalah '111')

1110 0000 0000 0000 0000 0000 0000 0000 (NETMASK)

1110 0000 0000 0000 0000 0000 0000 0000 (IP 224.0.0.0) hingga
1111 1111 1111 1111 1111 1111 1111 1111 (IP 255.255.255.255)

JIKA Anda terus menambahkan bit ke netmask, Anda terus membagi: Subnet dari / 32 memilih satu mesin.

Tapi ingat Anda tidak bisa hanya memiliki mesin:

untuk membuat berbagai hal bekerja, beberapa jajaran subnet disediakan:

untuk setiap subnet, "0 bit pada nilai 1" dan "semua bit pada nilai 1" biasanya dicadangkan untuk penyiaran, jadi Anda biasanya hanya memiliki nb_of_possible_adresses_in_the_subnet-2 alamat IP yang tersedia di subnet untuk antarmuka mesin yang sebenarnya. Dan yang lebih baik adalah antarmuka gateway yang memiliki antarmuka lain di jaringan lain, memungkinkan Anda untuk menggunakannya sebagai gateway untuk mencapai jaring lainnya (dan semuanya, melalui gateway jaring lainnya)

Olivier Dulac
sumber
sulit untuk diwakili dengan rapi ... Dan saya harap kebingungan antara "garis 2 ^ 32 alamat IP" dan representasi 32 bit yang digunakan di tempat lain tidak lebih membingungkan daripada membantu ...
Olivier Dulac