Apa Tepatnya Alamat MAC Digunakan Untuk?
Setiap bahagian perkakasan di rangkaian setempat anda mempunyai alamat MAC selain alamat IP yang diberikan kepadanya oleh router atau pelayan setempat. Apa sebenarnya alamat MAC itu?
Sesi Soalan & Jawapan hari ini datang kepada kami dengan ihsan SuperUser-bahagian pembahagian Stack Exchange, kumpulan yang diketuai oleh komuniti laman web Q & A.
Soalan
Pembaca SuperUser Vishnu Vivek ingin tahu tentang alamat MAC dan fungsi mereka:
Saya faham bahawa alamat IP hierarki, supaya router di seluruh internet tahu arah mana untuk menghantar satu paket. Dengan alamat MAC, tidak ada hierarki, dan dengan itu penghantaran paket tidak mungkin. Oleh itu, alamat MAC tidak digunakan untuk pemindahan paket.
Saya tidak fikir ia duduk di sana tanpa sebab. Oleh itu, persoalan saya ialah, di mana sebenarnya alamat MAC dimainkan semasa pemindahan paket?
Di mana memang? Apakah fungsi khusus alamat MAC tersebut?
Jawapan
Penyumbang SuperUser Werner Henze menawarkan beberapa pandangan mengenai fungsi alamat MAC:
Apakah alamat MAC yang digunakan untuk?
Alamat MAC adalah asas asas yang rendah yang membuat kerja rangkaian ethernet anda berfungsi.
Kad rangkaian masing-masing mempunyai alamat MAC yang unik. Paket yang dihantar di ethernet sentiasa datang dari alamat MAC dan dihantar ke alamat MAC. Jika penyesuai rangkaian menerima satu paket, ia membandingkan alamat MAC destinasi paket ke alamat MAC penyesuai sendiri. Jika alamat itu sepadan, paket itu diproses, jika tidak, ia dibuang.
Terdapat alamat MAC khusus, contohnya adalah ff: ff: ff: ff: ff: ff, yang merupakan alamat siaran dan alamat setiap penyesuai rangkaian dalam rangkaian.
Bagaimana alamat IP dan alamat MAC berfungsi bersama-sama?
IP ialah protokol yang digunakan pada lapisan di atas ethernet. Satu lagi protokol contoh ialah IPX.
Apabila komputer anda ingin menghantar paket ke beberapa alamat IP x.x.x.x, maka cek pertama adalah jika alamat destinasi berada dalam rangkaian IP yang sama dengan komputer itu sendiri. Jika x.x.x.x berada dalam rangkaian yang sama, maka IP destinasi boleh dicapai secara langsung, jika tidak, paket perlu dihantar ke router yang dikonfigurasi.
Sehingga kini, perkara-perkara sepertinya semakin buruk, kerana sekarang kita mempunyai dua alamat IP: satu ialah alamat sasaran paket IP yang asal, yang lain ialah IP peranti yang mana kita harus menghantar paket (hop seterusnya, sama ada akhir destinasi atau penghala).
Oleh kerana ethernet menggunakan alamat MAC, penghantar perlu mendapatkan alamat MAC hop seterusnya. Terdapat protokol khas ARP (protokol resolusi alamat) yang digunakan untuk itu. Sebaik sahaja pengirim telah mendapatkan alamat MAC hop seterusnya, dia menulis alamat MAC sasaran ke dalam paket dan menghantar paket.
Bagaimana kerja ARP?
ARP sendiri adalah protokol di atas ethernet, seperti IP atau IPX. Apabila peranti mahu mengetahui alamat MAC untuk alamat IP yang diberikan, ia menghantar satu paket ke alamat MAC penyiaran yang bertanya "Siapa yang mempunyai alamat IP yyyy?" Semua peranti menerima paket itu, tetapi hanya dengan alamat IP yyyy yang akan menjawab dengan paket "It's me." Perisian yang meminta menerima jawapan dan kini tahu bahawa alamat MAC sumber adalah alamat MAC yang betul untuk digunakan. Sudah tentu hasilnya akan di-cache, jadi peranti tidak perlu menyelesaikan alamat MAC setiap kali.
Routing
Saya hampir lupa untuk menyebut: tidak ada routing berdasarkan alamat MAC. Ethernet dan alamat MAC level rendah hanya boleh mencapai setiap peranti pada sama rangkaian (kabel atau wayarles). Jika anda mempunyai dua rangkaian dengan penghala di antara anda tidak boleh mempunyai peranti dalam rangkaian A menghantar satu paket ke alamat MAC peranti dalam rangkaian B. Tiada peranti dalam rangkaian A mempunyai alamat MAC pada peranti dalam rangkaian B, jadi paket ke alamat MAC ini akan dibuang oleh semua peranti dalam rangkaian A (juga oleh penghala).
Routing dilakukan pada peringkat IP. Hanya melihat penghala itu hanya melakukan apa yang saya nyatakan di atas dalam bahagian "Bagaimana alamat IP dan alamat MAC berfungsi bersama?". Penghala akan menerima paket untuk alamat MAC sendiri tetapi untuk alamat IP yang berbeza. Dia kemudian akan memeriksa sama ada dia boleh terus mencapai alamat IP sasaran. Jika ya, dia menghantar paket itu ke sasaran. Jika tidak, router itu sendiri juga mempunyai router hulu dikonfigurasi dan akan menghantar paket ke penghala itu.
Sudah tentu anda boleh mempunyai beberapa router yang dikonfigurasikan. Penghala rumah anda hanya akan mempunyai satu router hulu yang dikonfigurasikan, tetapi di internet backbone router besar mempunyai jadual penghalaan besar sehingga mereka tahu cara terbaik untuk semua paket.
Kes penggunaan lain untuk alamat MAC
- Suis rangkaian menyimpan senarai alamat MAC yang dilihat pada setiap port dan hanya paket ke hadapan ke port yang perlu melihat paket.
- Titik akses wayarles sering menggunakan alamat MAC untuk kawalan akses. Mereka hanya membenarkan akses untuk peranti yang diketahui (alamat MAC adalah unik dan mengenal pasti peranti) dengan frasa laluan yang betul.
- Server DHCP menggunakan alamat MAC untuk mengenal pasti peranti dan memberikan beberapa peranti alamat IP tetap.
Mempunyai sesuatu untuk menambah penjelasannya? Bunyi dalam komen. Ingin membaca lebih banyak jawapan dari pengguna Stack Exchange yang berteknologi tinggi? Lihat thread perbincangan penuh di sini.