1 puan yazan GN⁺ 2025-03-05 | Henüz yorum yok. | WhatsApp'ta paylaş
  • TCP/IP yığını uygulaması

    • TCP/IP yığınını doğrudan uygulamak karmaşık bir iş gibi görünebilir.
    • TCP'nin temel özellikleri TCP başlığını ayrıştırma, durum makinesi, tıkanıklık kontrolü ve yeniden iletim zaman aşımı hesaplamasından oluşur.
    • Bu blog serisinde Linux üzerinde asgari düzeyde bir kullanıcı alanı TCP/IP yığını uygulayacağız.
    • Bu yazının ve yazılımın amacı, ağ ve sistem programlamayı daha derinlemesine öğrenmeye yönelik eğitsel bir amaç taşır.
  • TUN/TAP aygıtı

    • Linux çekirdeğinde düşük seviyeli ağ trafiğini yakalamak için TAP aygıtı kullanılır.
    • TUN/TAP aygıtları kullanıcı alanı programlarında kurulumu kolaydır ve OpenVPN gibi çeşitli programlarda kullanılır.
    • TAP aygıtı kullanılarak Ethernet tamponlarına veri okunup yazılabilir.
  • Ethernet çerçeve biçimi

    • Ethernet, LAN üzerinde bilgisayarları birbirine bağlayan çeşitli ağ teknolojilerinin temelidir.
    • Ethernet standardı, 1980'de ilk kez yayımlandığından beri büyük ölçüde gelişmiştir.
    • Ethernet çerçevesi başlığı bir C yapısı olarak tanımlanabilir ve DMAC, SMAC, Ethertype ve payload alanlarını içerir.
  • Ethernet çerçevesi ayrıştırma

    • GNU C derleyicisinin yapı bellek yerleşimini optimize etmesini önlemek için packed niteliği kullanılır.
    • Ethernet çerçevelerini ayrıştırma ve işleme için genel senaryo basittir.
  • Adres Çözümleme Protokolü (ARP)

    • ARP, 48 bit Ethernet adreslerini protokol adreslerine dinamik olarak eşlemek için kullanılır.
    • ARP paket biçimi görece basittir ve donanım türü, protokol türü, donanım boyutu, protokol boyutu, opcode ve veri alanlarını içerir.
  • Adres çözümleme algoritması

    • Yinelenen ARP isteklerini önlemek için ARP sonuçlarını saklamada translation table kullanılır.
    • ARP uygulamasının nihai testi, ARP isteklerine doğru şekilde yanıt verip vermediğini doğrulamaktır.
  • Sonuç

    • Ethernet çerçevesi işleme ve ARP'nin asgari uygulaması görece kolaydır ve birkaç satır kodla mümkündür.
    • Projenin kaynak kodu GitHub'da incelenebilir.
    • Bir sonraki yazıda ICMP echo ve yanıtı (ping) ile IPv4 paket ayrıştırmasının uygulanmasına devam edilecek.

Henüz yorum yok.

Henüz yorum yok.