Ey sanal makine, senin IP’in ne?

>Sadece text konsol kullanan sanal bir sunucu kurdunuz, ve dhcp ile köprü üzerinden host’unuzun bulunduğu ağa bağlanıyor. Her seferinde login olmadan IP’sini nasıl öğrenirsiniz?

Çokça sanal sunucu kullanarak yazılım geliştiren biri olarak bu bir süredir fena halde canımı sıkmaktaydı. Çözmek zor değil, ama ancak vakit buldum, çözümü de paylaşayım istedim.

İşin sırrı /etc/issue dosyasında saklı. Bu dosya, konsol login’lerini yöneten getty programları tarafından, kullanıcı adını sordukları prompt’dan hemen önce görüntüledikleri bir metin içeriyor.

Her ne kadar /etc/issue bir çeşit dinamik içerik sağlasa da (bkz man agetty), ne yazık ki “bana ağ arayüzlerinin IP’lerini ver” diyemiyorsunuz. Bunun için rc.local’dan (veya cron’dan) yardım almanız gerek. Önce /etc/issue dosyasını /etc/issue.skel olarak kopyalayın. Sonra da rc.local dosyasının sonuna önce şu satırı ekleyin:

Bunun hemen arkasından da IP adresini görmek istediğiniz her arayüz için şu satırı arayüz ismini değiştirerek eklememiz gerekiyor:

Artık makineniz açıldığında login prompt’dan hemen önce IP adreslerinizi görebilirsiniz.

Elbette, bu çözüm, eğer dhcp kullanıyorsanız ve IP adresiniz değişirse, size doğru IP adresini vermeyecektir. Bu sorunu cron kullanarak çözebilirsiniz.

Cron’lu çözümü paylaşmak isteyen?

Selamlar,

–eg