IPsec ek yükü: mod, NAT-T ve algoritmalar hepsi onu değiştirir
Yayımlanmış tek bir ek yük rakamı, tek bir yolda tek bir kapsüllemeyi anlatır. Tünelinizin gerçekte üzerinde anlaştığı başlıkları toplayın, sonra yolu ölçün.
Bir kılavuzun bir yerinde genellikle altmış ile seksen bayt arasında bir sayı vardır ve birileri bunu arayüz MTU'sunu bulmak için 1500'den çıkarmıştır. O sayı belirli bir yolda belirli bir kapsüllemeyi anlatır. Modu, dış adres ailesini, şifrelemeyi veya NAT'ın varlığını değiştirin; aritmetik artık tünelinize uymaz.
Sayı başka bir tünelden gelmiş
Ek yük, soyut anlamda IPsec'in bir özelliği değildir. Gerçekte kurulan paketin bir özelliğidir: üzerinde anlaşılmış bir mod, dış başlık, koruma başlığı, dolgu, bütünlük alanı ve belki de ek bir UDP sarmalı.
IPv4 ile ve NAT olmadan taşıma modu için verilen sayı, NAT geçişi altında IPv6 ile tünel modundan daha küçük bir paketi anlatır. İkisi de kendi durumu için doğrudur. Birini başka bir kuruluma kopyalamak, insanların büyük aktarımları bozan bir MTU ile kalmasının yoludur. Arıza sessizdir, çünkü küçük istekler çalışmaya devam eder.
Gerçekten orada olan katmanları toplayın
Dış IP başlığından başlayın ve içeri doğru ilerleyin. Tünel modunda özgün paket içeridedir, yani dış başlık bir eklemedir, değiştirme değil. RFC 4303 ESP başlığını, dolguyu ve onu izleyen bütünlük verilerini anlatır.
| Layer | What it adds | When it applies |
|---|---|---|
| Outer IP header | 20 bytes for IPv4, 40 for IPv6 | Always, and 40 rather than 20 if the outer path is v6 |
| ESP header | 8 bytes of SPI and sequence number | Always |
| Block cipher IV | 8 to 16 bytes depending on the transform | When the negotiated cipher uses one |
| Padding and trailer | Padding to the block size, plus two trailer bytes | Always, and the amount varies with payload length |
| Integrity data | 12 to 16 bytes for common authenticated ciphers | When integrity protection is negotiated |
| UDP encapsulation | 8 bytes | NAT traversal on port 4500, which is common for clients behind NAT |
Bu satırların hiçbiri kurulumlar arasında sabit değildir ve dolgu satırı tek bir kurulumun içinde bile sabit değildir. Yayımlanmış tek bir ek yük rakamının hayal kırıklığı yaratmasının tüm nedeni budur.
İki saha aynı tünel konusunda anlaşamayabilir
Korunan paket yine de dış yolu geçmek zorundadır ve dış yol her yerde aynı değildir. Bir PPPoE erişim hattı temiz bir Ethernet segmentinden daha az taşır. Bir mobil ağ daha da daralabilir ve kendi trafiğini tünelleyen bir sağlayıcı kimsenin söz etmediği bir kapsülleme daha ekler. Bir bağlantıda çalışıp diğerinde başarısız olan tünel, ikinci bağlantıyı anlatıyordur, protokolü değil.
İki yön de farklı olabilir. Asimetrik bir rota size çalışan bir yükleme ve tıkanmış bir indirme verebilir; bu, paket boyutlarına değil erişilebilirliğe bakana kadar uygulama sorunu gibi okunur. Küçük bir pingin başarılı olması, tam boyutlu bir yanıt hakkında çok az şey kanıtlar.
Çıkarmak yerine ölçün
Yoldan sağ çıkan en büyük datagramı bulun. Sonra onu arayüzün bildirdiği değerle karşılaştırın:
ip link show eth0 | grep -o 'mtu [0-9]*' ip xfrm state list ping -M do -s 1400 198.51.100.7 ping -M do -s 1372 198.51.100.7 tcpdump -ni any -c 20 'esp or udp port 4500'
Yanıtlar gelene kadar ping boyutunu düşürün ve çalışan en büyük değeri o yolun bütçesi sayın. xfrm çıktısı hangi modun ve hangi algoritmaların anlaşıldığını söyler ve dürüst her hesaplamanın girdisi budur. Yakalama, kabloda ESP mi yoksa UDP içine sarılmış ESP mi olduğunu doğrular ve bu NAT sorusunu tahmin etmeden çözer.
Kontrol düzlemi için de bir değer ayırın. IKE el sıkışma paketleri veri paketlerinden farklı bir yapıya sahiptir, bu yüzden bir el sıkışma yakalamasından türetilen boyut veri düzleminin MTU'su değildir.
Sayıyı ait olduğu yere koyun
Tünel üzerinden TCP için MSS sıkıştırması genellikle en az müdahaleci denetimdir, çünkü tünelin kendisini değiştirmeden uçların gönderdiğini azaltır. Rota tabanlı bir tünel için tünel arayüzünün MTU'sunu bilerek ayarlayın ve nedenini belgeleyin. İkisini birden yapıp sonra ölçmek hangisinin yardımcı olduğu konusunda size hiçbir bilgi vermez.
Anlaşılan modu, dış aileyi, NAT durumunu ve yeniden üretilebilir belirtiyi bilette birlikte tutun. Kaydedilmiş dört olgudan oluşan bir küme, akılda tutulan bir sabitten üstündür ve bunun sonraki istemci güncellemesini atlatan tek sürümü budur.