Home Map Index Search News Archives Links About LF
[Top bar]
[Bottom bar]
Bu makalenin farklı dillerde bulunduğu adresler: English  Castellano  Deutsch  Francais  Italiano  Nederlands  Russian  Turkce  Arabic  

[Photo of the Author]
Guido Socher

Yazar hakkında:

Guido uzun süredir bir Linux meraklısı. Kendi linux sayfası şu adreste bulunabilir: www.oche.de/~bearix/g/.

İçerik:



IP-Maskelendirilmesinin Kurulması

Çeviri: Kadriye Öztürk
[Illustration]

Özet:

IP-Maskelendirilmesi birçok bilgisayarın internete sadece bir yerel IP'yle Linux çalışan bir makinadan bağlanabilmesini sağlar. Bu şu demek; siz tüm özel ağınızı internete bağlayacaksınız ve internet sağlayıcınız sizin hala sadece bir makinadan bağlandığınızı düşünecek. Bu makale IP-Maskelendirilmesini 2.2.x çekirdeğiyle nasıl yapılandıracağınızı anlatıyor. Nasıl ağ kurulacağını anlatmıyor. Bilgisayar ağları hakkında genel bir fikir edinmek icin, Ocak 2000 sayısının ağ hakkındaki makaleyi okumanızı tavsiye ederim.



 

Genel

IP-Maskelendirilmesini kullanmak için bu makalede de anlatıldığı gibi en azından bir tane 2.2.x çekirdekli bir linux kutusuna ihtiyaç duyacaksınız. Bu makina İnternete bağlantıyı kurmak için kullanılacak. Linux'u bağlantı paylaşım kutusu olarak kullanmak, bütün iç ağınızda Linux çalıştıracağınız anlamına gelmez. Gerçekte, Linux Windows, Macs, ve Unix'in diğer dağılımlarıyla iyi çalışır.
Bizim bu makalede ilgilendiğimiz bu bağlantı paylaşım kutusudur. O bir ucuyla Internete diğer ucuylada sizin özel ağınıza bağlıdır. Bu makina bu yüzden en azından iki arayüze ve IP adresine ihtiyaç duymaktadır. IP adreslerinden biri İnternete yönlendirilecek yerel bir IP adresidir. Bu IP adresi genelde İnternet servis sağlayıcınız tarafından modem bağlantınızı ( veya her ne kullanıyorsanız ) kurduğunuz anda atanır. Diğer IP adresleri özel adreslerdir ki şu aralıklarda atayabilirsiniz:
Bu makale ağınızın nasıl kurulacağını anlatmaz. Özel ağınızın kurulmuş ve yapılandırılmış olduğunu umuyorum.  

IP-Maskelendirilmesi İlkeleri

Temel olarak IP-Maskelendirilmesi iç IP adreslerini dış IP adreslerine çevirir. Buna ağ adres değişimi denir ve Linux bunu kapı-numaraları (port-numbers) denen şeylerle yapar. Dış dünyadan tüm bağlantılar sizin Linux kutunuzdan meydana geliyormuş gibi görünür. Daha detaylı bir açıklamayı Ocak sayısında bulabilirsiniz.

Bazen IP paketleri özeldir ve IP-Maskelendirilmesi tüm uygulamalar için çalışmaz, ama çoğu durum için çalışır. ICQ, ftp ve quake için modüller vardır. Ve bu özel uygulamaların, iç ağda düzgün bir şekilde çaliışması için çekirdekte yerleştirilmiş olması gerekmektedir. Genel durumlarda ise, sadece HTTP (Sanal doku tarayıcısı), telnet, ssh, veya smtp (e-posta) 'le çalışan herşey iyi çalışır.  

Çekirdeğin Kurulumu

Bu makinadan başka Linux'un önemli dağılımlarından (Redhat, Mandrake, Debian, Suse...) birinde çekirdek kullanananlar bu bölümü atlayabilirler çünkü onların çekirdekleri IP-Maskelendirilmesini kullanmak için zaten hazırdır.

Başarıyla çalışan bir çekirdek derlediğimde, genelde /usr/src/linux/.config 'in bir kopyasını alırım. Çekirdek derlemek istediğim diğer bir zamanda, sadece bu yapılandırımı yüklerim ve önceki çekirdek yapılandırımıma sahip olurum. Bundan sonrası kolay, sadece IP-Maskelendirilmesi gibi küçük değişiklikler yapacağım.

IP-Maskelendirilmesini kullanmak için, çekirdek derlerken asağıdakilere evet deyin. Bunlar IP Maskelendirilmesi için ihtiyaç duyacağınız bileşenlerdir. Özel bir kurulum için diğer seçeneklerden istediğinizi seçebilirsiniz.

 

IP-Maskelendirilmesinin Yapılandırılması

IP-Maskelendirilmesi yapılandırılmasını otomatik hale getirmek için bir betik (script) yazacağız. Aşağıdaki yazıyı /etc/rc.d/init.d altına koyunuz ve adını ipmasq olarak değiştiriniz. chmod 755 ipmasq ile de haklarını değiştiriniz ve çalışabilir hale getiriniz. Aşağıdaki betik, iç ağınıza doğru olan arayüzde durgun IP adresi 192.168.0.1 kulandığınızı varsayar (ifconfig eth0 192.168.0.1 netmask 255.255.255.0). Başka birşey kullanıyorsanız aşağıdaki betiği lütfen değiştiriniz. Bu resim bizim kullandığımız ağın ağ planını gösteriyor.
networkplan
 

#!/bin/sh
 echo "IP maskelendirilmesi kuruluyor..."
 
# Sanal dokuda gezmek için hala windows kullananlar bunu kullanmadan 
# önce Unix yazı dosyası haline çevirmeliler.
# FTP dosya değişiminin maskelendirilmesi desteği 
/sbin/modprobe ip_masq_ftp

#

#--------------

# Not: Aşağıdaki modullerin yüklenilmesi diyez ile açıklama satırı haline 
# getirilmiştir. İç ağınızda kullanmak istediğiniz ilgili uygulamaların
# yanındaki açıklama işaretini (#) kaldırınız.  

#
# UDP üzerinden RealAudio maskelendirilmesi desteği. 

#/sbin/modprobe ip_masq_raudio

#

# IRC DCC dosya değişimlerinin maskelendirilmesi destekleri

#/sbin/modprobe ip_masq_irc

#

# Quake ve QuakeWorld maskelendirilmesi desteği

# Quake I / QuakeWorld (26000 ve 27000 kapıları (port) )

#/sbin/modprobe ip_masq_quake

#

# Quake I/II/III / QuakeWorld (26000, 27000, 27910, 27960 kapıları (port) )

#/sbin/modprobe ip_masq_quake ports=26000,27000,27910,27960

#

# CuSeeme video konferansı yazılımının maskelendirilmesi desteği

#/sbin/modprobe ip_masq_cuseeme

#

#VDO-live video konferansı yazılımının maskelendirilmesi desteği

#/sbin/modprobe ip_masq_vdolive

#--------------

# Önemli: IP yönlendirilimini seçilir kılın. 2.2.x çekirdeklerde benimsenmiş
# olarak seçilmemiş olur.
#

echo "1" > /proc/sys/net/ipv4/ip_forward

#

# NOT: 192.168.0.x 'in bir iç ağı için bir örnekti.Alt netmask 255.255.255.0
# veya "24" bit 'dır.

# Eger farklı iç IP adresleri kullanıyorsanız lütfen
# değiştiriniz.
#

/sbin/ipchains -P forward DENY
 
/sbin/ipchains -A forward -s 192.168.0.0/24 -j MASQ
 
#

#--- dosya sonu

Bunu test etmek için özel ağınızdaki bütün bilgisayarların yapılandırılmış olduğundan ve benimsenmiş gateway'in 192.168.0.1 (Linux maskelendirme makinası) na yönlendirilmiş olduğuna emin olun. Sonra maskelendirilmenin yapıldığı makinada betiği (script) çalıştırın. Bundan sonra Ağınızın içindeki bir makinadan Internetteki bir makinaya ping gönderin. (e.g ping 213.239.9.21)
Bu çalışıyorsa maskelendirmede çalışıyor demektir. Ayrica bunu da deneyin ping www.linuxfocus.org. Bu da yukarıdaki ping ile aynı sonucu vermesi gerekir. Eğer çalışmıyorsa istemcilerinizdeki /etc/resolv.conf dosyasını kontrol edin. Bu dosya iç ağınızdaki her makinada bulunmalı ve ISP'nizin DNS sunucunuzda listelenmesi gerekir.
Windows 9x-İstemcileri için de TCP/IP-Stack 'in ağ yapılandırılmasını ağkartına (Networkcard) bağlamanız gerekmektedir ve DNS, ISP'nin DNS sunucusunu 'search order for DNS Server'ın altına eklenerek aktive edilmek ihtiyacı duyar.
Pingler veya çalışan herşey (sanal doku tarayıcısı gibi) de çalışacaktır.

Şimdi yapılandırmanızı değiştirme zamanı ki bunu yaparak /etc/rc.d/init.d/ipmasq programcığını Linux bağlantı kutunuz her açıldığında otomatik olarak çalışacak hale getireceğiz. Benim fikrime göre bunu yapmanın en iyi yolu /etc/rc.d/init.d/network dosyasını değiştirmek (bu dosya zaten var) ve init.d/network dosyasının başlangıç kısmının SONUNDA /etc/rc.d/init.d/ipmasq çalıştırmaktır. Bu dosyadaki ifadelere bakın ve sonra da "start)" ifadesini arayın.  

Sonuç

Gördüğünüz gibi IP-Maskelendirilmesini kurmak zor değil. As you saw it is not difficult to setup IP-Masquerading. Temel olarak ip yönlendirilmesine seçilir kılmak ve iki tane ipzinciri komutundan oluşuyor. IP-Maskelendirilmesi küçük ağlar için çok etkili bir uygulamadır.

Daha fazla ve detayli bir bilgi icin, IP-Masquerading mini howto and the IPCHAINS-HOWTO. okumanizi tavsiye ederim.

IP Maskelendirilmesini kullanmak için, elbette düzgün bir şekilde yapılandırılmış bir ağa ihtiyaç duyacaksınız. Bu, bu makalenin konusu değil. Home networking makalesi sizi terimlere alıştırıyor ve Net 3 howto veya The Network Administrator Guide kitapları nasıl ağ kurulucağını detaylı bir şekilde anlatıyor. Bu yıl içinde daha sonra ağ konusunda bir makale daha yazmayı planlıyorum ama bu kadar beklemek istemezsiniz :-).

 

Bu makale için fikirlerinizi bildirme formu

Her makale kendi fikir bildirme formuna sahiptir. Bu sayfada, bir yorum gönderebilirsiniz veya diğer okuyucuların yorumlarını okuyabilirsiniz:
 talkback page 

Webpages maintained by the LinuxFocus Editor team
© Guido Socher
LinuxFocus.org 2000

Click here to report a fault or send a comment to Linuxfocus

2000-05-03, generated by lfparser version 1.5