Rehber › Yazıcı kimliği: kuyruk adları ve IP'ler sizi neden yanıltır

Yazıcı kimliği: kuyruk adları ve IP'ler sizi neden yanıltır

Yayın tarihi:

Eş yazı belirtiyi teşhis ediyordu: etiketin yanlış yazıcıdan çıkması. Bu yazı ise yığının bu arızayı neden bu kadar kolaylaştırdığını anlatıyor — uygulamadan sokete, katman katman. Bu katmanların hiçbiri bozuk değil. Her biri yalnızca, altından değişmesine izin verilen bir kimliğe güveniyor.

Katman 1: uygulama bir ad bilir

ERP'niz, WMS'iniz ya da betiğiniz "PRINTER_A'ya bas" der. Uygulamanın bildiği tek şey o dizedir. Bu adın bugün hangi cihaza çözüldüğünü bilmez — bunu tamamen alt katmana devreder. Alttaki eşleme değişirse uygulama kendisine söyleneni yapmaya devam eder ve yanılmaya devam eder.

Katman 2: kuyruk elle bakılan bir eşlemedir

Windows ve CUPS kuyrukları insanların düzenlediği ad-port tablolarıdır: kurulum programları, yedek geri yüklemeleri, klonlanmış iş istasyonu imajları, sürücü yeniden kurulumları. Bu tabloyu fiziksel gerçeklikle karşılaştıran hiçbir şey yoktur. İki kuyruk tek porta bakabilir; bir kuyruk sessizce başka bir porta kayabilir; geri yüklenen bir imaj geçen yılın eşlemesini bu yılın ağına taşıyabilir. Kuyruk katmanı "bu ad nereye gider?" sorusunu yanıtlar — "orası hâlâ doğru yer mi?" sorusunu asla.

Katman 3: adres bir kiradır

IP adresi kalıcı hissettirir çünkü nadiren değişir — oysa DHCP ağında bir kiradır ve bağın var olduğu tek yer kira tablosudur. Bir elektrik kesintisi, kira süresini aşan uzun bir hafta sonu ya da değiştirilen bir yönlendirici bunu yeniden dağıtır. .50 olan yazıcı .73 olarak döner ve .50'yi artık kim aldıysa — başka bir yazıcı, bir tarayıcı, bir termostat — işleri o alır. Yazıcılarda bu, dizüstülerden daha kötüdür: bir kez adresiyle kurulurlar ve yıllarca kimse bir daha bakmaz.

Katman 4: 9100 portunda el sıkışma yoktur

Ham baskı (JetDirect, 9100 portu) daha dostane bir çağın tasarımıdır: TCP soketi aç, baytları yaz, kapat. Cihazın kim olduğunu söylediği bir adım yoktur, göndericinin bunu denetlediği bir adım da. O portu dinleyen her şey — yanlış yazıcı dahil — baytları itiraz etmeden kabul eder. Kaymayı yakalayabilecek tek protokol etkileşimi hiç mevcut değildir.

Katman 5: dil de kimlik taşımaz

ZPL'de "yalnız X yazıcısıysan bas" diye bir alan yoktur. ^XA … ^XZ etiketi anlatır, hedef cihazı asla. EPL, TSPL ve CPCL de aynıdır. Yani son savunma hattı — işin içeriği — de kördür. Baytlar yanlış yazıcıya vardığında içlerinde hatayı ele verecek hiçbir şey yoktur; bunu bir insan etiketleri yanlış tepside bulduğunda öğrenirsiniz.

"Bizde hiç olmadı" neden hayatta kalan yanılgısıdır

Yukarıdaki mekanizmaların hepsi sessizce ve aralıklı bozulur: arıza için bir kiranın dolması ve başka bir cihazın adresi kapması, ya da bir klon ve bir ad çakışması gerekir. Tesisler yıllarca bunu yaşamaz, sonra bir öğleden sonralık sevkiyat etiketini iade masasında kaybeder. Arızanın yokluğu, güvenli tasarımın kanıtı değil, biriken şanstır.

Gerçek çözüm neye benzer

Bir yazıcının kararlı kimliği cihazın kendisidir — seri numarası ve yapılandırması — onu gösteren herhangi bir ad ya da adres değil. Bu arıza sınıfını kapatan bir tasarımın şunları yapması gerekir:

  1. işleri bir adrese değil, bir cihaz kimliğine bağlamak;
  2. bu kimliği kurulum anında bir kez değil, her bağlantıda, işi göndermeden önce doğrulamak;
  3. yanıt veren cihaz, işin bağlandığı cihaz değilse basmayı reddetmek.

2. adımı bugün elle yaklaşık olarak yapabilirsiniz: her ağ değişikliğinden sonra her kuyruktan yazıcının kendi yapılandırma etiketini bastırıp karşılaştırın. Bu, protokolün size hiç vermediği el sıkışmanın elle yapılan hâlidir — ve elle yapılıyor olması, tam da işe yarayacağı yoğun günde atlanmasının sebebidir.

Sık sorulan sorular

IP adresi neden kötü bir yazıcı kimliğidir?

DHCP ağında adres, cihazın bir özelliği değil bir kiradır. Bir elektrik kesintisi ya da dolan bir kira .50 adresini başka bir cihaza verebilir ve oraya gönderilen her iş onu takip eder. Yazıcılarda durum daha kötüdür: bir kez adresle kurulurlar ve yıllarca kimse bir daha bakmaz.

9100 portu hangi yazıcının yanıt verdiğini doğrular mı?

Hayır. Ham baskı bir TCP soketi açar, baytları yazar ve kapatır. Cihazın kimliğini bildirdiği bir adım da, göndericinin bunu denetlediği bir adım da yoktur; o portu dinleyen her şey işi sessizce kabul eder.

ZPL bir işi tek bir yazıcıyla sınırlayabilir mi?

Hayır. ZPL'de hedef cihazı adlandıran bir alan yoktur; ^XA … ^XZ yalnız etiketi anlatır ve EPL, TSPL, CPCL de aynıdır. İşin içeriği, yanlış makineye ulaştığını fark edemez.

İlgili yazılar

ZPL nedir?

ZPL, Zebra termal yazıcıların anladığı komut dilidir. Komutların nasıl okunacağını, bir etiketin nasıl kurulduğunu ve en sık yapılan hataları anlatıyoruz.

Hangi barkod türünü seçmeliyim?

EAN-13 mi, Code 128 mi, QR mı? Barkod türünü veriye, alana ve okuyucuya göre seçmenin pratik kuralları.

ZPL dosyası yazıcısız nasıl önizlenir?

ZPL dosyası yalnızca metindir — etiket ancak biri onu çizdiğinde var olur. ZPL etiketini yazıcıya gitmeden görmenin üç pratik yolu.

Kendi ZPL kodunuzu deneyin →