Mengapa alamat Ethernet / MAC diperlukan?

16

Saya tidak mengerti mengapa alamat MAC Ethernet diperlukan. Tidak bisakah semua komputer hanya terhubung ke jaringan terpadu dan menggunakan alamat IP untuk berkomunikasi?

Misalnya, ada mekanisme berikut di Ethernet:

  1. Komputer dengan IP 192.168.1.1( X.1) ingin mengirim paket ke 192.168.1.2( X.2)
  2. X.1 menggunakan ARP untuk mendapatkan MAC dari X.2
  3. Untuk melakukannya, X.1perlu mengirim paket ke semua komputer di jaringan; hanya satu yang akan menjawab
  4. X.1 mendapat MAC dan mengirim paket

Bukankah lebih sederhana hanya dengan melakukan satu langkah:

  1. X.1mengirim paket ke semua komputer di jaringan; hanya X.2akan memprosesnya, orang lain akan mengabaikannya

Pertanyaan pelengkap adalah: Mengapa alamat IP diperlukan, jika semua perangkat memiliki alamat MAC yang unik?

pengguna2449761
sumber
Bagaimana komputer tahu bahwa mereka harus mengabaikan data? Tanpa alamat MAC, mereka tidak dapat menentukan yang mana di jaringan yang harus memprosesnya ...
Bakuriu
1
mereka bisa menggunakan alamat IP alih-alih alamat MAC
user2449761
erm ... komputer <-> Alamat IP bukan pemetaan injeksi. Saya akan menulis ulang pertanyaan saya: Bagaimana komputer tahu bahwa mereka harus mengabaikan data? Tanpa alamat MAC, mereka tidak dapat menentukan yang mana di jaringan yang harus memprosesnya ... karena lebih dari satu dari mereka dapat memiliki IP yang sama ?
Bakuriu
4
mereka seharusnya tidak memiliki IP yang sama di subnet yang sama ... ini adalah konflik
user2449761
1
Pertanyaan pelengkap adalah serverfault.com/q/410626/102768
OrangeDog

Jawaban:

31

The lapisan jaringan yang berbeda yang ada untuk memungkinkan mereka untuk ditukarkan dengan teknologi yang berbeda.

Dua layer yang Anda bicarakan di sini adalah layer 2 dan 3. Layer 2 dalam skenario ini adalah Ethernet - dari mana alamat MAC muncul, dan Layer 3 adalah IP.

Ethernet hanya berfungsi di tingkat lokal, antara perangkat jaringan yang terhubung ke jaringan siaran "datalink", sedangkan IP adalah protokol yang dapat dirutekan sehingga dapat menargetkan perangkat di jaringan jarak jauh.

Persyaratan masing-masing berbeda. Ethernet menetapkan serangkaian teknologi yang memungkinkan paket untuk dikirim dan diterima di antara perangkat jaringan, sedangkan IP mendefinisikan protokol yang memungkinkan paket data untuk melintasi beberapa jaringan.

Tidak ada yang bergantung pada yang lain, yang memberikan fleksibilitas pada jaringan. Misalnya, Anda dapat memilih untuk terhubung ke layanan internet Anda menggunakan IP over ethernet, tetapi di jaringan internal Anda, Anda mungkin memilih untuk menggunakan IP over ... paper. Di mana seseorang menuliskan isi setiap paket dan secara fisik berjalan ke mesin lain dan mengetiknya. Jelas ini tidak akan terlalu cepat, tetapi itu masih berupa IP asalkan orang membawa bit kertas dengan menghormati aturan IP routing.

Di dunia nyata ada protokol datalink berbeda yang sudah Anda gunakan dua yang berbeda (meskipun skema pengalamatan mereka sama): 802,3 - ethernet, dan 802.11 - wifi.

IP tidak peduli apa lapisan yang mendasarinya.

Sama, IP dapat ditukar dengan protokol lapisan jaringan yang berbeda (asalkan itu terjadi untuk semua peserta). Seperti ATM .

Meskipun tidak ada yang secara langsung mencegah pembuatan protokol yang mencakup layer 2 dan layer 3, itu akan menjadi kurang fleksibel, dan jadi kurang menarik, dan sangat tidak mungkin untuk digunakan.

Paul
sumber
2
Untuk jaringan internal Anda harus menggunakan RFC1149 . ( Deskripsi yang kurang teknis )
Scott Chamberlain
2
Apa, seperti menggunakan bendera isyarat tangan ?
Scott Chamberlain
1
@ScottChamberlain: Saya suka seni ASCII di bendera tanda tangan!
Fred Larson
5
IPoAC adalah pilihan yang buruk untuk komunikasi internal; merpati bekerja di luar rumah lebih baik daripada di dalam ruangan
cpast
2
@ user2449761 orang hanya mendaftar yang konyol. Alih-alih ethernet Anda dapat menggunakan bluetooth, dial-up, GPRS, LTE, USB, DSL, token ring, dll.
OrangeDog
8

Di mana keputusan apakah akan memproses atau mengabaikan paket dilakukan? Tidak ada jawaban yang benar-benar memuaskan:

1) Di sakelar? Nah, itu berarti switch harus memahami setiap protokol yang menentukan komputer mana yang tertarik pada paket mana. Itu tidak hanya akan meningkatkan biaya switch dan mengurangi kecepatan mereka tetapi itu akan membuat perubahan dalam protokol IP jauh lebih sulit untuk dijelaskan.

2) Di perangkat keras antarmuka Ethernet? Nah, ini akan membuat jaringan lebih lambat karena setiap paket data harus pergi ke setiap mesin. Teknologi seperti WiFi dan jaringan penghubung dengan jembatan yang lebih lambat tidak mungkin dilakukan. Memiliki Ethernet yang berjalan pada kecepatan yang berbeda untuk beroperasi tidak mungkin. Teknologi seperti IPv6 atau IP multicast akan membutuhkan perubahan perangkat keras untuk digunakan di semua stasiun akhir Ethernet.

3) Dalam perangkat lunak? Nah, ini akan membuat komputer jauh lebih lambat karena mereka harus berurusan dengan jumlah interupsi antarmuka jaringan yang jauh lebih tinggi. Semua masalah bridging, VPN, dan Wifi yang disebutkan di atas akan menjadi masalah juga.

Semua ini akan membuat Ethernet tidak dapat digunakan tanpa IP dan berarti perubahan dalam Ethernet akan diperlukan untuk membuat perubahan dalam IP. Yuck.

Pemisahan kekhawatiran itu bagus.

David Schwartz
sumber
Plus itu dapat sangat mengurangi kinerja jaringan secara keseluruhan. Untuk opsi 3, saya mengirim file besar yang memenuhi jaringan 1GBit saya, dan tiba-tiba semua orang di jaringan mendapatkan file itu juga dan harus mengabaikannya, dan tidak memiliki bandwidth untuk mengirim file ke orang lain yang bukan bagian dari transfer file saat ini.
PlasmaHH
bukankah pilihan kedua menggambarkan cara kerja Ethernet? Semua antarmuka mendapatkan paket yang sama, tetapi hanya satu mesin yang tidak akan mengabaikannya (kecuali ini dalam mode promiscuous). Saklar ada di sana untuk mempercepat ...
user2449761
2
@ user2449761 Semua paket hanya masuk ke semua komputer jika Anda menggunakan perangkat keras jaringan kuno yang memiliki hub alih-alih sakelar. Hub pada awalnya merupakan opsi karena alasan biaya; tapi sekarang sakelar murah tidak ada yang menggunakannya lagi.
Dan Neely
@Dan itulah yang saya bicarakan ...
user2449761
2
Opsi 1 sudah terjadi. Itu tidak menggantikan penggunaan alamat MAC, setidaknya belum. Tetapi beberapa perangkat keras switching dapat dikonfigurasi untuk menggunakan alamat MAC tujuan atau menggunakan alamat IP tujuan untuk memilih antarmuka keluar. Ada kemungkinan bahwa dalam 10 atau 20 tahun alamat MAC hanya akan tetap untuk tujuan historis, dan semua perutean paket akan dilakukan berdasarkan alamat IP saja. Bagian tentang perubahan IP menjadi lebih sulit untuk diterapkan tidak dihindari karena router backbone telah melakukan routing berdasarkan alamat IP tujuan dalam perangkat keras selama bertahun-tahun.
kasperd
3

Alamat IP dan alamat MAC beroperasi pada berbagai lapisan suite protokol internet . Alamat MAC digunakan untuk mengidentifikasi mesin dalam jaringan siaran yang sama pada lapisan 2, sedangkan alamat IP digunakan pada lapisan 3 untuk mengidentifikasi mesin di seluruh jaringan yang berbeda.

Bahkan jika komputer Anda memiliki alamat IP, masih membutuhkan alamat MAC untuk menemukan mesin lain di jaringan yang sama, karena setiap lapisan menggunakan lapisan yang mendasarinya. Pada halaman yang disebutkan sebelumnya Anda dapat menemukan beberapa diagram yang bagus menjelaskan protokol suite secara detail.

vembutech
sumber
2

Masalah kemacetan dihadapi oleh jaringan ethernet karena mereka bertambah besar. Inturn ini dapat mencekik jaringan dan menyebabkan penundaan. Ini adalah salah satu faktor yang membawa konsep subnet. Tetapi, dengan subnet, kita membutuhkan entitas tambahan yang disebut router untuk memungkinkan paket melakukan perjalanan dari mesin dalam satu subnet ke mesin di subnet lain.

Jarak yang terbentang oleh kabel ethernet adalah masalah utama lainnya karena dapat membatasi keberhasilan transmisi jika melampaui batas tertentu. Ini membawa entitas baru lebih lanjut dalam bentuk hub / repeater.

Perhatikan bahwa semua mekanisme komunikasi tidak menggunakan alamat MAC untuk komunikasi. PPP & HDLC tidak menggunakan alamat MAC untuk identifikasi.

Juga, perhatikan bahwa beberapa jaringan tidak menggunakan ethernet. Jaringan cincin token memerlukan lapisan tautan data yang berbeda.

Jika Anda mengirim paket dari jaringan A ke perangkat di jaringan B dengan mengatasi melalui alamat mac perangkat di jaringan B, paket itu akan jatuh di jaringan A itu sendiri. Perhatikan bahwa meskipun ada router antara jaringan A dan jaringan B, router akan menjatuhkan paket karena router berfungsi dengan menerima paket yang ditujukan ke alamat mac-nya tetapi untuk alamat ip yang berbeda.

Dari skenario di atas, sangat jelas bahwa, internet bukan jaringan datar karena berbagai jaringan lokal / pribadi. Ada juga berbagai entitas jaringan antara sumber & tujuan.

Karena internet bukan jaringan datar, alamat MAC tidak digunakan untuk semua jenis komunikasi dan beberapa jaringan memerlukan lapisan data link yang berbeda selain ethernet, kami memerlukan alamat IP untuk merutekannya ke node yang diinginkan terlepas dari lokasi node dan ini dicapai dengan lapisan jaringan.

Juga, lihat diskusi serupa di /programming/26290069/arp-vs-ip-why-do-we-need-both

Karthik Balaguru
sumber
Selain contoh-contoh "pembawa burung", "isyarat tangan" dan "kertas dan pensil" dari Lapisan 2 alternatif, ada beberapa yang aneh namun terkadang bermanfaat . IP melalui SMS, atau Facebook, atau bahkan melalui email. Lalu ada SLIP, PPP, dan PPPoE standar lama. Ketiganya TIDAK menghadirkan wajah yang sama seperti koneksi Ethernet atau WIFI - namun semuanya ini dapat menembus IP, dan sepenuhnya dapat dirutekan.
Ross Presser
2

Seperti yang dijelaskan orang lain, Anda memerlukan protokol Layer 2 untuk kontrol kemacetan di jaringan lokal Anda. Layer 3 digunakan untuk routing dan pengalamatan antar jaringan.

Karena itu, pertanyaan yang valid dapat berupa: Mengapa kedua lapisan tidak dapat menggunakan skema pengalamatan yang sama?

Jawaban pertama: Seperti yang disebutkan orang lain, ini memungkinkan Anda untuk beralih teknologi L2 dan / atau L3 dan semuanya masih berfungsi.

Jawaban kedua: Bahkan jika semua orang setuju untuk memiliki protokol Layer 2 menggunakan alamat IP, maka Anda masih harus menggunakan dua alamat IP, satu untuk Layer 2 dan satu untuk Layer 3. Mengapa? NATting. Jika komputer Anda memiliki alamat IP publik, maka alamat L2 dan L3 bisa sama. Namun, jika Anda menggunakan NATting, maka alamat L2 dan L3 Anda akan berbeda.

Komentar terakhir: Ketika Anda mengatakan semua orang menerima pesan dan yang bukan penerima mengabaikannya, Anda berbicara tentang WiFi. Ethernet berkabel tidak lagi berfungsi seperti itu. Dulu seperti itu ketika kami menggunakan kabel koaksial dan kemudian ketika kami menggunakan hub. Switches hanya mengirim pesan / paket ke port yang sesuai (kecuali jika Anda melakukan serangan pada mereka dan jenuh tabel mereka).

cabad
sumber
Saya sangat senang Anda telah menambahkan komentar terakhir. Seperti yang telah Anda tunjukkan: kemacetan dapat dikelola oleh sakelar. Switch dapat menggunakan skema pengalamatan IP saja. Saya juga tidak mengerti argumen NATing: kami selalu membutuhkan dua alamat IP di kedua sisi NAT. Saya pikir pertanyaan yang valid adalah: mengapa kita perlu lapisan DataLink dan Jaringan terpisah di jaringan modern? Saya mengerti pemisahan diperlukan di tahun 70-an, ketika token ring, merpati dan kertas digunakan.
user2449761
0

Alamat MAC dan alamat IP beroperasi pada lapisan jaringan yang berbeda untuk tujuan yang berbeda. Menyingkirkan salah satu lapisan dapat menyebabkan masalah, membuat kebingungan, atau mencegah hal-hal bekerja.

Katakanlah saya punya beberapa perangkat keras kuno (katakanlah, satu juta dolar bubut CNC) yang hanya berbicara IPX . Di jaringan khusus IP Anda, bagaimana orang berbicara dengannya? Atau katakan saya menghubungkan komputer yang belum dikonfigurasi ke jaringan baru. Dengan tidak adanya alamat MAC, bagaimana server DHCP memberi tahu komputer saya alamat IP apa yang digunakan?

Katakanlah saya punya server dengan empat koneksi gigabit ke switch backbone, digabung menjadi satu koneksi virtual. Di jaringan khusus MAC Anda, apa alamat server saya? Atau katakan saya memiliki komputer yang terhubung melalui modem PPPoA dan tidak memiliki alamat MAC. Bagaimana orang bisa terhubung dengannya?

Menandai
sumber
0

Hmmm saya pikir ini bisa dibuat untuk bekerja (saya sebenarnya / selesai / menyerahkan tugas alamat MAC); namun jika ini dilakukan, Anda harus membeli perangkat keras baru untuk IPv6 dan kemungkinan tidak ada tumpang tindih. Jadi saya tidak suka konsekuensinya.

Joshua
sumber
0

The Aku di IP singkatan Internetworking Protocol.

Berarti IP seharusnya unik di antara SEMUA jaringan di seluruh dunia.

Alamat IP seharusnya secara global. Jika Anda mengirim lalu lintas ke 9.9.9.9 seharusnya mencapai di mana saja 9.9.9.9 tidak masalah di mana di dunia ini 9.9.9.9 secara fisik atau jaringan mana yang 9.9.9.9 aktif secara fisik.

(Ini agak rusak karena NAT. Ketika TCP / IP ditemukan, NAT bukan bagian dari rencana semula, dan ini adalah "retasan" sampai IPv6 menjadi lebih lazim ke tempat yang tidak diperlukan. Berpura-pura NAT tidak ada untuk memahami jawaban ini.)

Alamat MAC seharusnya hanya unik di jaringan lokal tempat host tersebut berada. Itu tidak dirancang untuk memungkinkan komunikasi antara apa pun yang tidak ada di jaringan lokal yang sama. Jadi ada batasan fisik yang diasumsikan dengan alamat MAC, tetapi tidak ada batasan seperti itu dengan alamat IP.

TCP / IP didasarkan pada gagasan bahwa:

  • ada jaringan lokal di mana sistem dapat berbicara satu sama lain secara langsung tanpa melibatkan router
  • kadang-kadang komputer di satu jaringan ingin berbicara dengan komputer di yang lain, dan memerlukan router untuk melakukan itu.

Jika ada mekanisme fundamental lain di mana dua konsep di atas tidak berlaku maka IP dan MAC tidak akan diperlukan seperti saat ini.

Jika Anda mendesain protokol atau hal lain yang sama sekali tidak perlu berbicara dengan mesin di luar jaringan lokal yang sama, maka itu ide yang baik untuk tetap menggunakan alamat MAC. Saya pikir protokol ATA melalui Ethernet seperti ini, karena dirancang untuk memungkinkan berbagi drive ATA pada jaringan yang sama dan tidak melalui Internet untuk tujuan keamanan.

LawrenceC
sumber
0

Saya hanya punya pemikiran serupa. Tetapi saya sampai pada kesadaran bahwa Anda membutuhkan lapisan MAC. Bahkan untuk beralih tujuan!

Masalah yang tak terhindarkan adalah bahwa Anda memiliki selain protokol IP, bahkan jika kita berbicara tentang IP, ada IPv4 dan IPv6. Bagaimana perangkat jaringan tahu yang mana itu? jadi Anda perlu MAC sebagai lapisan bootstrap, di bidang protokol itu adalah lapisan berikutnya, yang memberi tahu Anda apa yang dibawa MAC.

XYZ
sumber
-2

Anda terjebak dengan hanya memikirkan satu lapisan OSI. IP hanya berfungsi karena Ethernet (dan lainnya) ada, dengan cara yang sama seperti Ethernet hanya ada karena ada kabel fisik untuk membawa lalu lintas. Ini bukan "IP atau MAC" - perutean lalu lintas memerlukan alamat MAC untuk berfungsi: teknologi IP (serta teknologi lainnya yang terkait dan tidak terkait) berada di atas semua itu. Anda tidak bisa hanya bertukar satu dengan yang lainnya.

Lightness Races with Monica
sumber
-6

IP dinamis teman saya! Di lingkungan lokal Anda (rumah, kampus, tempat kerja), Anda memiliki pengaturan jaringan. Ini tidak terhubung langsung ke Internet (dengan huruf 'I') tetapi melalui router. Router ini mendapatkan IP dinamis (dalam kebanyakan kasus, kecuali Anda memiliki IP statis) dari ISP Anda, dan memberikan alamat dinamis (sama 'tetapi' seperti di atas) ke semua komputer yang terhubung. Kenapa itu dilakukan seperti itu? Dalam satu baris, untuk memberikan layanan kepada lebih banyak pengguna daripada IP yang Anda miliki. Masalahnya adalah, Anda harus dapat mengidentifikasi MacBook Pro (: D) di antara semua komputer lain, sehingga Anda memerlukan alamat UNIK, bukan yang dinamis / dibagikan. Itu mac kamu. Dan itulah mengapa Anda membutuhkannya.

Anda dapat membaca lebih lanjut di sini

tfrascaroli
sumber
2
Itu benar-benar tidak ada alasan untuk menggunakan alamat MAC.
Daniel B
1
Intinya adalah: tidak semua komputer memiliki alamat IP yang unik, kadang-kadang Anda bahkan tidak menginginkannya, jadi itu argumen yang bagus untuk mereka yang memiliki alamat LAN terpisah, yang merupakan alamat MAC.
reinierpost
1
Ya mereka melakukanya. Segala sesuatu yang dapat dirutekan internet, menurut definisi, dialamatkan secara unik. Kalau tidak, internet tidak akan berfungsi. Ada hal-hal seperti NAT yang melanggar prinsip end-to-end ini. Dalam hal NAT Anda juga memiliki alamat LAN yang terpisah.
Daniel B
@ Daniel B Saya cukup yakin itu tidak benar, tapi mungkin saya salah paham. Misalnya: dapatkah Anda memberi tahu saya cara unik menangani PC yang saya ketikkan ini, yang ada di jaringan pribadi lokal, dari tempat Anda berada sekarang, tanpa koneksi yang sudah ada sebelumnya? Bagaimana jika Anda ingin mengarahkan komputer di sebelah komputer ini?
SevenSidedDie
@DanielB Tentu bukan itu alasannya. Pertanyaan OP: Tidak dapatkah semua komputer hanya terhubung ke jaringan terpadu dan menggunakan alamat IP untuk berkomunikasi? Jawaban saya menyediakan informasi tentang yang bersangkutan, bukan hipotetis pertanyaan, yang akan pergi sepanjang baris: "Mengapa kita menggunakan alamat MAC pada model ethernet?". Karena dia bertanya mengapa kita tidak bisa hanya menggunakan IP, ada jawaban saya. Tolong, lain kali baca hati-hati sebelum downvoting :)
tfrascaroli