IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  reklamver

Etiketlenen Kullanıcılar

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 10 Şubat 2008, 17:49   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Linux ve Ağ Yönetimi




Linux ağ Yönetimi
Bu bölümde hızla gelişen Linux İşletim sistemin’nin en çok başvurulan özelliklerinden olan ağ servislerinin kullanımı anlatılacaktır.

2.1 Giriş
Ağ yönetimi deyince akla önce açık mimariler geliyor, zira Internet’in yaygınlaşmasında UNIX ve türevlerinin önemi çok büyüktür. Tüm dünyada ve ülkemizde hızlı bir yükseliş trendi yakalayan Linux’de UNIX işletim sisteminin bir türevidir. Çok kullanıcılı bir işletim sistemi olan UNIX, bir çok kullanıcının aynı anda birbirinden farklı olarak bilgisayar ortamındaki veri ve programları paylaşabildikleri bir sistem olmayı başarmıştır. Bütün UNIX türlerinde temel olan komutlar ve sistemi saran kabuklar sayesinde UNIX diğer işletim sistemlerine oranla ağ yönetimi konusunda daha güvenli ve verimlidir.

2.2 Linux’un Ağ Donanım Desteği

Makineyi ağ üzerinde kullanabilmek için Linux altında geliştirilen bir teknolojiye ve bu teknolojiyi konuşan protokol desteğine ihtiyaç vardır. Örneğin ağa ethernet kartıyla bağlanmak gerekirse ethernet sürücü ve TCP/IP desteğine, modem kullanılacak ise SLIP/PPP desteği ve seri bağlantı için gerekebilecek bir yazılıma ihtiyaç vardır.
Ağ yapılandırılmasına geçmeden önce kullanılan Linux sürümünü kontrol edip aşağıdaki programların sistemde yüklenip yüklenmediğini kontrol edilmelidir.
·Yeni bir çekirdek kaynak kodu: Halihazırda kullanılan çekirdek küçük bir ihtimalle de olsa kullanılacak ağ tipi yada kartı için destek içermiyor olabilir. Bunun için yeni ve kararlı bir çekirdeği (2.0.36, 2.0.38 gibi) seçmek gerekebilir.
·Ağ araçları: Bunlar yan cihazları kontrol eden programlardır. Örneğin ’route’ komutu yardımıyla yönlendirmeyi yapabilir, ’netstat’ ile ağ istatistiği çıkarılabilir. Sistem yöneticisi tarafından sıkça kullanılan bu komutlar genellikle her dağıtım içinde hazır olarak bulunur. Bütün ağ araçları Net-Tools paketi içinde yer alır. Bu paketi sisteme kurmak için en yakın sunsite yansısında yer alan /system/network/sunacm/NetTools dizinindeki Net-Tools programını almak ve derlemek gerekir.
·Ağ uygulama programları: Telnet ve FTP programları Net-Tools paketi ile gelmezler. Bu gibi ek yazılımları NetKit paketi yardımıyla elde edilebilir. Kurulum için en yakın sunsite arşivindeki /system/network/file-transfer dizininden alınıp derlenmelidir.

·Adresler: Yerel ağa bağlı bir ağ sisteminde aşağıdaki adres bilgileri olmalıdır.
1.Kurulacak makinenin IP adresi ve adı
2.Yerel alan ağı adresi
3.IP broadcast adresi
4.Ağ maskesi
5.Geçit (gateway)
6.DNS adresi
Bir ağa bağlı olmayan makineler için yukarıdaki bilgilerinde bir önemi yoktur. Bu durumda Linux makine ağa bağlanmadan "loopback" kullanarak kendi üzerinden haberleşecektir.
Eğer Internet bağlantısı yapılmayacak ise istenilen adres tanımlaması yapılabilir. Eğer Internet bağlantısı yapılacak ise özel tanımlı adres bloklarından yararlanılır. Internet’teki RFC1597 belgesine göre bu özel adres blokları aşağıda görüldüğü şekildedir. Bir C sınıfı ağın ihtiyaçlar dahilinde düzenlenmesi rahatlıkla her işi görebilir. Özellikle küçük ve orta ölçekli bir kurum için C sınıfı bir adresin tahsisi yeterlidir. Yukarıda da görüldüğü gibi C sınıfı adresin kullanılması durumunda yerel makinelere 192.168.0.0’dan 192.168.255.255 adresine kadar herhangi bir adres tanımlaması yapılabilir.
Eğer bir yerel ağ kurup ve Internet’e bağlanılmayacak ise özel adres blokları içinden bir adres seçme zorunluluğu yoktur. Bu adres blokları standartlaşma sağlamak amacıyla belirlenmiştir.

2.3 Linux’a Ağ Desteği Verilmesi


Linux’un en büyük avantajlarından biriside kurulumdan sonra Internet’e bağlanmaya hazır bir hale gelmesidir. Ek olarak kurulum yapıldıktan sonra büyük çoğunlukla yeniden ayarlanmaya ya da paket kurmaya ihtiyaç kalmaz. Bir ağ yada genel anlamıyla fiziksel parçalar bilgisayar üzerinde çalışma yaparken hatalara maruz kalabilecek en uygun alanlardan biridir. Bu nedenle daha dikkatli olmakta yarar var.
Daha önce kurulan Linux’e bir şekilde ağ bağlantısı yapılmamış ve çekirdeğe ağ desteği verilmemiş olabilir. Eğer Slackware ya da RedHat sürümlerinden biri kullanılıyorsa bu destek otomatik olarak çekirdekte geliyor.
Öncelikle çekirdek içinde ağ kartlarına ait sürücüleri (device drivers) ve kullanılacak protokollerin destekleri bulunmalıdır. Bu iki temel yapıdan yoksun olan çekirdek ile ağ hizmeti vermek veya servis almak mümkün değildir.

2.3.1 Çekirdek


Çekirdeğin en son sürümünü en yakın tsx yansısından indirip /usr/src dizini altına açılır. Burada kullanıcının ya ethernet ya da PPP bağlantısı ile ağ erişimini sağlayacağını düşünerek çekirdek derlenecektir. Aşağıda yer alan satırlara göre çekirdek ayarları yapılacaktır.
CONFIG NET ? [Y/n] y
TCP/IP networking (CONFIG_INET) [Y/n/?] y
Network device support (CONFIG_NETDEVICES) [Y/n/?] y
Yukarıda çekirdeğe şimdilik sadece genel ağ desteği ve TCP/IP desteği verildi. Eğer Internet’e bir ethernet kartı ile bağlı isek bu karta ilişkin sürücüleri, telefon hattı ile bağlı isek PPP desteğini vermek zorundayız. Yukarıdaki örnek hangi çekirdek sürümünü alırsanız alın zaten açık halde geliyor, yani bu kısımları Enter tuşu ile geçe bilinir.
Ethernet (10 or 100Mbit) (CONFIG_NET_ETHERNET) [Y/n/?] Y
Other ISA cards (CONFIG_NET_ISA) [N/y/?] y
NE2000/NE100 support (CONFIG_NE2000) [N/y/m/?] y
Eğer kullanılan ethernet kartı NE2000 uyumlu ise ikinci satırda geçen "Other ISA cards" seçeneği aktif tutulmalıdır. Yoksa NE2000 desteği için seçim şansı olmaz. Eğer kullanılan kart NE2000 dışında bir kart ise ( meselâ 3COM), "Other ISA cards" parametresini açık tutmaya gerek yoktur.
Piyasada çok çeşitli ethernet kartları mevcut. Genellikle yaygın olarak 3Com 3CXX, NE2000 ve Intel EtherExpress kullanılıyor. Performans olarak Linux’un desteklediği kartlar arasında büyük fark olabiliyor. Tek kullanıcısı bulunan bir makinede FTP ve
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
gibi basit servisler verilecekse herhangi bir kart bu işi fazlasıyla görecektir. En çok kullanılan ethernet tipi olan 10Mbit ethernet kartları her yerde kolaylıkla bulunur ve fiyatı gayet makuldür. 100Mbit ethernet kartlarının fiyatı da her geçen gün ucuzlamaktadır.
Ethernet kartların dışında bağlanma yöntemine bağlı olarak çekirdeği PPP, SLIP, Token Ring gibi bir destek altında derlemek gerektir. Başka bir seçenekte bunları modül olarak yerleştirmektir. PPP, seri hat üzerinden IP bağlantısı kurarak veri iletişimini sağlayan bir protokoldür. Linux ile PPP bağlantısı yardımıyla ister uzaktaki bir makineye erişebilir, ister PPP sunucusu kurulabilir ve evdeki kullanıcılara PPP hizmeti verilebilir. Tüm ISS’ler PPP bağlantıyı destekler. Pek azı SLIP’de destekleyebilir. PPP desteği içinde aşağıdaki soruya evet yanıtı verilmelidir. Böylece çekirdek PPP desteğine sahip olacaktır.
PPP (point-to-point) support (CONFIG_PPP) [Y/n/?] y
Gerekli tüm aygıt sürücü ve protokol destekleri verildikten sonra çekirdek derlenip sistem yeniden başlatılmalıdır. Eğer açılış anında çekirdek mesajının içinde;
PPP Dynamic channel allocation code copyright 1995 Caldera, Inc.
PPP line discipline registered.
gibi iki satır görünürse, PPP desteği yerleşmiş demektir. Aynı şekilde NE2000 kartı için;
NE*000 ethercard probe at 0x280: 00 80 ad c8 b6 31
eth0: NE2000 found at 0x280, using IRQ 3
3Com 3c590 kartı için;
eth0: 3Com 3c590 Vortex 10Mbps at 0xe000,
00:a0:21:40f6, IRQ 15
Yukarıdaki IRQ ve I/O adresleri her karta göre değişiklik gösterebilir. Genellikle açılırken bu kartların bulunabileceği I/O adreslerini ve kesinti istekleri açılış anında taranır. Örnek olarak çoğu ethernet kartları IRQ 15’e, I/O adresini de 0x300’e ayarlar.

2.3.2 Desteklenen Ethernet Kartları


Özellikle bir sunucuyu Linux ile çalıştırmak isteniyorsa ve Internet sunucu olarak Linux kullanılacak ise ileride donanım sorunlarıyla karşılaşmamak için kart seçerken çok dikkat edilmelidir. Linux çok geniş donanım desteği ile birlikte geliyor. Her geçen gün bu donanım destek listesine yeni üyeler katıldığı için buradaki liste hiçbir zaman tam gerçekleri yansıtmayacaktır. Linux’un donanım desteği hakkındaki en güncel bilgileri Patrick Reijnen tarafından yazılan face=Arial color=#0000ff [Only Registered Users Can See Links]
Linux DEC, Tulip, EtherExpress, AMD Lance, NE2000/1000, HP PCLan olmak üzere hatırı sayılır bir ölçüde ethernet kartı desteği sağlıyor. Bir ethernet kartı alınacaksa performansına dikkat edilmelidir. Benzer fiyatlı kartların hızları arasında hatırı sayılır bir fark olduğu göz ardı edilmemelidir. Halihazırda en çok kullanılan ethernet kartı modeli NE2000 uyumlu olanlardır. Özellikle bu NE2000/1000 türevlerine dikkat edilmelidir, piyasada çok değişik fiyatta ve hızda olanları vardır. Mecbur kalınmadıkça EtherExpress kartlardan kullanılmamalıdır.
adresindeki Linux Hardware Compatibility HOWTO(Linux Donanım Uyumluluğu Listesi) dosyasından edinilebilir. ·3Com 3C501
·3Com 3C503, 3C505, 3C507, 3C509/3C509B (ISA) / 3C579 (EISA)
·3Com Etherlink III Vortex Ethercard’ları (3C590, 3c592, 3C595, 3c597) (PCI), 3Com Etherlink XL Boomerang Ethercard’ları (3c900, 3c905) (PCI) ve 3Com Fast Etherlink Ethercard (3c515) (ISA)
·AMD LANCE (79C960) / PCnet-ISA/PCI (ATI500, HP J2405A, E1500/NE2100)
·AT&T GIS WaveLAN
·Allied Telesis AT1700, LA100PCI-T
·Ansel Communications AC3200 EISA
·Apricot Xen-II / 82596
·Cabletron E21xx
·Cogent EM110
·Danpex EN-9400
·DEC DE425 (EISA) / DE434/DE435 (PCI) / DE450/DE500 (DE4x5 driver)
·DEC DEPCA, EtherWORKS, EtherWORKS 3
·DEC DE450/DE500-XA (Tulip Driver)
·DEC Qsilver’s (Tulip driver)
·Fujitsu FMV-181/182/183/184
·HP PCLAN (27245 ve 27xxx serisi)
·HP PCLAN PLUS (27247B ve27252A)
·HP 10/100VG PCLAN (J2577, J2573, 27248B, J2585) (ISA/EISA/PCI)
·ICL EtherTeam 16i/32 EISA
·Intel EtherExpress, EtherExpress Pro
·KTI ET16/P-D2, ET16/P-DC ISA
·NE2000/NE1000 türevleri
·New Media Ethernet
·PureData PDUC8028, PDI8023
·SEEQ 8005
·SMC Ultra / EtherEZ (ISA), 9000 serisi
·SMC PCI EtherPower 10/100 (Tulip Driver)
·Schneider & Koch G16
·Western Digital WD80x3
·Zenith Z-Note/IBM ThingPad 300 dahili kart
·Znyx 312 etherarray (Tulip driver)
·Accton parallel port ethernet adapter
·AT-Lan-Tec/RealTek parellel port adapter

2.4 Linux Ağ Yapılandırması

Bazı UNIX sistemlerde ağ aygıtlarına erişmek için düğümler tanımlanmıştır ve diğer düğümler gibi /dev dizini altında bulunurlar. Ancak Linux’ta ağ ara yüzleri çekirdek içinde dinamik olarak desteklenir ve özel bir düğüme ihtiyaç duymazlar.
Ağ aygıtları aygıt sürücüleri tarafından yapılandırılır ve birinci ethernet kartı eth0, ikincisi eth1, ... adını alır. Bir ağ yapılandırmasını tanımlarken ağ aygıtına belirli bir IP adresi, ağ maskesi ve benzeri parametreleri veririz. Bunun için ’ifconfig’ (interface configure) komutu kullanılır. Genel yazılımı şöyledir;
ifconfig [device] < arabirim adresi > [netmask] < arabirim netmaskı > [broadcast]
< arabirim broadcastı > [down | up]
device : Arabirim adıdır. (eth0,sl0,lo,etc,...)
netmask : Arabirime verilen adrese göre seçilen netmask adresidir.
broadcast : Arabirime verilen adrese göre seçilen broadcast adresidir.
down & up : Arabirimi aktif veya pasif yapmak için kullanılır.
Örnek olarak 192.168.99.10 IP’sine sahip ve Internet’ten bağımsız bir C sınıfı bir ağa bağlanması için düşünülen makine için loopback ifconfig satırı;
# /sbin/ifconfig lo 127.0.0.1
# /sbin/ifconfig eth0 192.168.99.10 netmask 255.255.255.0
Yukarıda temel olarak makinenin kendi ağ aygıtını (loopback device) ve ethernet kartını tanımladık. Özetle kartın kimliğini bilgisayara tanıttık. Eğer ifconfig satırına ağ adresi (network address) bilgisini vermez isek çekirdek kendi kendine bir tahminde bulunacaktır. Yukarıdaki örnekte ikinci satırda çekirdek 192.168.99.10 IP adresi ve 255.255.255.0 ağ maskesinden bu makinenin C sınıfı ağ üzerinde bulunduğunu ve broadcast adresi olarak 192.168.99.255 kullanacağını tahmin edebilir. Linux altında pek çok ağ sürücü isimleri vardır. Bunlar Tablo 2.2’de verilmiştir.

ifconfig komutunu tek başına kullanılırsa halinde Linux’a tanıtılan ağ kartlarının bir listesi alınır. Aşağıdaki ifconfig komutu çıktısı verilmiştir.
# /sbin/ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0
UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1
RX packets:493 errors:0 dropped:0 overruns:0
TX packets:493 errors:0 dropped:0 overruns:0
eth0 Link encap:10Mps Ethernet Hwaddr 48:54:33:00:E8:3A
inet addr:192.168.99.10 Bcast:192.168.99.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:71956 errors:0 dropped:0 overruns:0
TX packets:13212 errors:3 dropped:0 overruns:0
Interrupt:3 Base address:0x300
’ifconfig’ komutunun sonuna ’down’ parametresi parametresi getirilirse söz konusu olan ağ aygıtı işlev dışı kalır. ’down’ parametresi verilen bir ağ aygıtı ’up’ ile tekrar açılırsa normal çalışmasına devam eder, anacak yönlendirme ayarları bozulmuştur ve elle tekrar düzeltilmesi gerekir.
Yönlendirme ayarlarının yapılmasından sonra ağın çalışmasını kontrol edebiliriz. Her paket, gönderileceği adrese gitmeden önce bir tabloya bakar. Bu tablo, paketin rotasını (gideceği adresi) barındırır. Bu tabloyu oluşturmak için ’route’ komutundan yararlanılır.
Route [add | del] [-net | -host] varis_adresi [gw yonlendirici] secenekler
add :tabloya ekle
del :tablodan sil
host aketin gideceği yer başka bir makine
net aketin gideceği yer başka bir ağ
varis_adresi aketin gideceği yer
yonlendirici :bu paketin gidebilmesi için gereken yönlendirici
# route add -net 127.0.0.0
# route add -net 192.168.99.0 netmask 255.255.255.0
Genellikle bir kart için bir ’ifconfig’ kullanırken, paketin yollanacağı birden fazla rotanın olması durumunda birden fazla ’route’ komutuna ihtiyaç vardır. Yukarıdaki komutta -net parametresiyle verilen ağ adresine gidecek paketler otomatik olarak çekirdek tarafından belirlenen lo ve eth0 aygıtına yollanır. Eğer bir ağa bağlı değilse ilk satırı yazmak bilgisayarın kendi kendisiyle haberleşmesi için yeterlidir.
# route add default gw 192.168.99.1 netmask 255.255.255.0
Üzerinde bulunduğumuz ağın bir arayüz yardımıyla dışarıya bağlı olduğunu farz ediyoruz. Eğer bir paket yerel ağa ait değil ise default rotayı izleyecek ve 192.168.99.1 adresinde bulunan arayüze gidecektir. Bu aşamadan sonra arayüz ve arkasındaki diğer makineler paketi yerine ulaştıracaktır.

2.4.1 Ağın Çalışmasını Gözlemlemek

Çekirdeğin yönlendirme tablosunu göstermek için route komutundan yaralanılabilir. Örneğin ağa bağlı bir makinede route komutunu çalıştıracak olursak;
$ /sbin/route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.99.0 * 255.255.255.0 U 0 0 143 eth0
127.0.0.0 * 255.0.0.0 U 0 0 1 lo
default cisco7507-202 0.0.0 UG 0 0 204 eth0
gibi bir tablo karşımıza çıkacaktır. Eğer komutu yazdıktan sonra hemen komut satırına düşmezseniz büyük bir ihtimalle Linux "default" bağlantıyı sağlayamıyor demektir. Bu durumda arayüz ile kablolama bağlantılarını ve elektrik tesisatlarını gözden geçirmek gerektir. Burada göze çarpması gereken ilk şeyler aşağıda sıralanmıştır.
·Destination : Paketin varacağı adres
·Gateway : Bu adrese varmak için paketin hangi noktaya yollanması gerektiği
·Genmask : Kullanılan ağ maskesi
·Iface : Paketin kullanacağı arayüz(eth0,lo gibi)
Makinenin kendini görebilmesi için aynı zamanda aşağıdaki komutada cevap verebilmesi gereklidir. Komutun işlemini bitirmesi için Ctrl-C tuşları kullanılmalıdır.
$ ping localhost
PING localhost (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.1 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.1 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.1 ms
--- localhost ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 0.1/0.1/0.1 ms
ping komutu, bağlantıları ve aynı zamanda bağlantı hızını ölçmek için kullanılan bir komuttur. Ping , ICMP protokolü yardımıyla hedef makineye belirli uzunlukta paketler gönderir. Karşıdaki makine bunları aldığı anda bekletmeden geri yollar. Arada geçen zaman farklı, iki makine arasındaki bağlantı hakkında bilgi verir.
ping [-r] [-c count] [-s packetsize] [-I interface address] host
-r: Routing tablosunu atlayarak doğrudan adrese ulaşmak için kullanılır. Daha çok yerel ağdaki adresleri kontrol etmek için kullanılır.
-c : Karşıdaki adrese kaç paket gönderileceğini belirtmek için kullanılır.
-q : Eğer paketlerin istatistiklerini görmek istemiyorsak bu parametre kullanılır.
-s : gönderilen paket büyüklüğünü değiştirmek için kullanılır.
-I : Arabirim adresi biliniyorsa bu parametre kullanılır.
host : Ulaşılacak makinenin adresi
Buna göre yukarıdaki tablodan birkaç sonuç çıkarabiliriz:
·Paketlerin her birinin boyu 64 byte’tır.
·Paketin gönderilmesi ile alınması arasında geçen süre 0.1 milisaniyedir.
·3 paket yollanmış, 3 paket geriye alınmıştır ve paket kaybı %0 dır.
·En hızlı paket 0.1 milisaniyede yerine ulaşmıştır. (min)
·En yavaş paket 0.1 milisaniyede yerine ulaşmıştır. (max)
·Paketlerin ortalama gidiş-dönüş süresi 0.1 milisaniyedir. (avg)
Şimdi ağ üzerinde ve ağın dışında yer alan herhangi iki makineyi kontrol edelim.
$ ping 192.168.99.13
PING 192.168.99.13 (192.168.99.13): 56 data bytes
64 bytes from 192.168.99.13: icmp_seq=0 ttl=32 time=1.0 ms
64 bytes from 192.168.99.13: icmp_seq=1 ttl=32 time=0.9 ms
64 bytes from 192.168.99.13: icmp_seq=2 ttl=32 time=0.9 ms
--- 192.168.99.13 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 0.9/0.9/0.1 ms
$ ping 192.168.100.104
PING 192.168.100.104 (192.168.100.104): 56 data bytes
64 bytes from 192.168.100.104: icmp_seq=0 ttl=254 time=2.1 ms
64 bytes from 192.168.100.104: icmp_seq=1 ttl=254 time=2.1 ms
64 bytes from 192.168.100.104: icmp_seq=2 ttl=254 time=1.8 ms
64 bytes from 192.168.100.104: icmp_seq=3 ttl=254 time=1.9 ms
--- 192.168.100.104 ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 1.8/2.0/2.1 ms
ping işlemi iki ayrı oturumda toplam 7 paket gönderiminden sonra kesildi. Eğer ping ile uzaktaki makineden hiçbir tepki alınmıyorsa bu düğüm noktasının ağa bağlı olduğundan ve doğru IP adresinin kullanıldığından emin olunmalıdır.

2.4.2 Ağ Yapılandırma Dosyaları

TCP/IP uygulamalarında pek çok yapılandırma dosyası hizmet verir. Bunlarında tamamı /etc dizini altında yer alır. Bu dosyalar herhangi bir editör yardımıyla değiştirilebildiği gibi açıklama satırları da satır başına # karakteri konularak belirtilir.

2.4.2.1 Dosyalar ile Ağ Konfigürasyonu

Linux, açılırken bazı dosyalara bakarak düzgün çalışması için gerekli konfigürasyonu yapar ve bazı yazılımları çalıştırır. Bu dosyalar /etc/rc.d dizini altında yer alır. Internet ve ağ bağlantısı için sadece iki dosyaya baş vurulur. Slackware dağıtımı içinde bunlar, konfigürasyonu yapan /etc/rc.d/rc.inet1 ve temel ağ programlarını çalıştıran /etc/rc.d/rc.inet2 dosyalarıdır. Bu dosyadaki değerleri gerektiği şekilde düzenleyerek Internet’e bağlanmak mümkündür.

2.4.2.1.1 "rc.inet1" Dosyası

Bu dosya yardımıyla arabirimlerin konfigürasyonu ve ayrıca yönlendirme tablosu düzenlenmektedir. İçeriği aşağıdaki gibidir;
#! /bin/sh
HOSTNAME=`cat /etc/HOSTNAME`
/sbin/ifconfig lo 127.0.0.1
/sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo
IPADDR="192.168.1.10" # REPLACE with YOUR IP address!
NETMASK="255.255.255.0" # REPLACE with YOUR netmask!
NETWORK="192.168.1.0" # REPLACE with YOUR network address!
BROADCAST="192.168.1.255" # REPLACE with YOUR broadcast address
GATEWAY="" # REPLACE with YOUR gateway address!
/sbin/ifconfig eth0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}
if [ ! $? = 0 ]; then
cat << END
END
fi
/sbin/route add -net ${NETWORK} netmask ${NETMASK} eth0
if [ ! "$GATEWAY" = "" ]; then
/sbin/route add default gw ${GATEWAY} netmask 0.0.0.0 metric 1
fi
# End of rc.inet1
Burada, yukarıda "ifconfig ve route" komutlarıyla yaptığımız tüm ayarları rc.inet1 dosyası yardımıyla yapılmıştır. Bu dosya ile, bilgisayar tekrar açıldığında elle ayarların yapılması sorunu ortadan kalkar.

2.4.2.1.2 "rc.inet2" Dosyası

İkinci önemli dosya olan /etc/rc.d/rc.inet2, belli başlı tüm Internet sunucularını çalıştırır. Aşağıda bu dosyanın bir kısmı görülüyor.
#!/bin/sh
NET="/usr/sbin"
IN_SERV="lpd"
LPSPOOL="/var/spool/lpd"
# At this point, we are ready to talk to The World...
echo "Mounting remote file systems..."
/sbin/mount -a -t nfs # This may be our /usr runtime!!!
echo -n "Starting daemons:"
# Start the SYSLOGD/Klogd daemons. These must come first.
if [ -f ${NET}/syslogd ]; then
echo -n " syslogd"
${NET}/syslogd
sleep 1 # prevent syslogd/klogd race condition on SMP kernels
echo -n " klogd"
${NET}/klogd
fi
# Start the SUN RPC Portmapper.
if [ -f ${NET}/rpc.portmap ]; then
echo -n " portmap"
${NET}/rpc.portmap
fi
done
Bu açılış dosyası, ağ üzerinden servis veren bir dizi sunucu programını çalıştırıyor ve hataları engellemek için proğramların yerinde olup olmadığına da bakıyor. Bu dosya içerisinde çalıştırılan servisler sistemin dışarıya bağlanması ve bazı servisleri vermesini sağlamaktadır.

2.4.2.2 Makine Adları ve IP Karşılıkları (/etc/hosts)

Internet üzerindeki tüm makinelerin kendilerine ait en az bir IP adresi vardır. Pek çoğunun da bu IP adresine karşılık gelen bir adı bulunur. Böylelikle örneğin 192.168.99.20 IP adresini ezberlemek yerine karşılığı olan nuri.etlik.com.tr makine adını akılda tutmak büyük ölçüde kolaylaşır. Internet’e bağlı olsun veya olmasın, özellikle belirli bir servis veren makinelerin birer adının bulunması isim karmaşası çıkmasını önler. Linux’ta /etc/hosts dosyası içinde makinenin IP adresi ile karşılık gelen adı aralarında bir boşluk yada TAB karakteri bulunacak şekilde alt alta yazılır. Dosya içinde ’loopback’ sürücüye ait bir satırında bulunması makinenin kendi iç haberleşmesi için önem taşır. Örnek olarak bir Linux /etc/hosts dosyası şu şekildedir.
# For loopbacking.
127.0.0.1 localhost
192.168.1.10 nuri.etlik.com.tr nuri
192.168.1.20 serkan.etlik.com.tr serkan
# End of hosts.
Yukarıda da görüldüğü gibi /etc/hosts dosyası iki temel satırdan oluşuyor. Birinci satırda makinenin IP adresi, ikinci ve daha sonraki satırda ise verilen IP adresine karşılık gelen makine adı yer alıyor. Bu durumda nuri.etlik.com.tr makinesine ister IP adresini ister nuri.etlik.com.tr isterse nuri ismini kullanılarak ulaşma imkanı vardır. Sistem yöneticisi bu dosyayı istediği zaman güncelleyebilir. Değişiklikten sonra makinenin kapatılmasına ya da herhangi bir daemon güncellemesine gerek yoktur. Bir program ağa bağlı bir makineye ulaşmak istediği zaman bu dosya mutlaka yeniden okunur.

2.4.2.3 Ağ İsimleri (/etc/networks)

Tıpkı makine adlarının sembolik adlarının karşılıklarının verilmesi gibi ağ isimlerinin de bir yada birden fazla takma adı bulunabilir. Anacak bu amaç için kullanılan /etc/networks dosyasına erişim o derece sık olmaz. Genellikle sadece sistem yöneticisi tarafından yönlendirme tablosuna bakarken düzenli bir görünüm için tercih edilir.
Bu dosyanın yapısı da /etc/hosts dosyasıyla benzerlik gösterir. İlk kolonda ağa verilecek isim, ikinci kolonda ise ağın IP adresi yer alır. Örnek bir /etc/networks dosyası aşağıdaki gibidir.
#
# /etc/networks
#
loopback 127.0.0.0
localnet 192.168.1.0
# End of networks.

2.4.2.4 Ağ Protokolleri (/etc/protocols)

/etc/protocols dosyası bir tablo halinde protokolün adını ve karşılık gelen protocols numarasını tutar. Bazı programcılar ve tcpdump gibi az sayıda birkaç program tarafından kullanılır.
#
# /etc/protocols
#
ip 0 IP # internet protocol, pseudo protocol number
icmp 1 ICMP # internet control message protocol
igmp 2 IGMP # internet group multicast protocol
ggp 3 GGP # gateway-gateway protocol
tcp 6 TCP # transmission control protocol
pup 12 PUP # PARC universal packet protocol
udp 17 UDP # user datagram protocol
idp 22 IDP # WhatsThis?
raw 255 RAW # RAW IP interface
# End.

2.4.2.5 Ağ Servisleri (/etc/services)

/etc/services dosyası bir servis protokol adı ile port numarası arasında eşleme yapar. Gayet kolay bir dosya formatı vardır. Dosyadaki her satırda üç kolon yer alır. Bunlar,
·Servis adı: Verilen servisi tanımlayan bir kelimedir. Örnek olarak uzaktan bağlantı için kullanılan ’telnet’ servisi gibi.
·Port/protokol: Birinci kelime, servisin aktif olduğu port numarasını verir. Ardından gelen protokol cinsi tcp ya da udp olabilir.
·Takma isimler: Bu servisi çağrıştırabilecek diğer kelimeler kullanılır.
Örnek bir /etc/services dosyası aşağıda verilmiştir.
#
# Network services, Internet style
#
tcpmux 1/tcp # TCP port service multiplexer
echo 7/tcp
echo 7/udp
discard 9/tcp sink xxxx
discard 9/udp sink xxxx
systat 11/tcp users
daytime 13/tcp
daytime 13/udp
netstat 15/tcp
qotd 17/tcp quote
msp 18/tcp # message send protocol
msp 18/udp # message send protocol
chargen 19/tcp ttytst source
chargen 19/udp ttytst source
ftp-data 20/tcp # File Transfer [Default Data]
ftp-data 20/udp # File Transfer [Default Data]
ftp 21/tcp # File Transfer [Control]
ftp 21/udp # File Transfer [Control]
ssh 22/tcp # Secure Shell Login
ssh 22/udp # Secure Shell Login
telnet 23/tcp
telnet 23/udp
# 24 - private
smtp 25/tcp mail
# 26 - unassigned
time 37/tcp timserver
time 37/udp timserver
rlp 39/udp resource # resource location
tftp 69/udp
gopher 70/tcp # Internet Gopher
gopher 70/udp
rje 77/tcp netrjs
finger 79/tcp

Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
80/tcp http # WorldWideWeb HTTP

Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
80/udp # HyperText Transfer Protocol

2.4.2.6 FTP Kullanıcıları (/etc/ftpusers)

/etc/ftpusers dosyası, ftp protokolü ile sisteme giren kullanıcıların sınırlandırılmasına yarar. ftpd tarafından sisteme giren bir FTP isteği geldiği zaman bu dosya okunur ve eğer FTP isteği yapan kullanıcının adı dosyanın içinde yer alıyorsa FTP isteği kabul edilir. Örnek bir /etc/ftpusers dosya yapısı aşağıdaki şekildedir.
#
# /etc/ftpusers
#
root
uucp
news
bin
mail
serkan
nuri
# End of ftpusers.

2.4.2.7 Güvenlik Dosyaları

(/etc/securty, /etc/hosts.allow, /etc/hosts.deny)
·/etc/securty: Sisteme root kullanıcı tarafından telnet protokolü ile girilme isteği halinde /etc/securty dosyası okunur. Bu dosya içinde yer alan tty’lardan sisteme girme isteği kabul edilir. Örnek bir /etc/securty dosyası aşağıda yer almaktadır.
#
# /etc/securetty
#
console
tty1
tty2
tty3
tty4
tty5
tty6
ttyS0
ttyS1
ttyS2
ttyS3
ttyp0
ttyp1
ttyp2
ttyp3
# End of ftpusers
/etc/hosts.allow ve /etc/hosts.deny konfigürasyon dosyaları, başka bir makineden kendi makinenize olan bağlantıları denetler. Bu iki dosya tcpd programının konfigürasyon dosyalarıdır. tcpd programı, inetd tarafından /etc/inetd.conf dosyasında tanımlanan FTP, telnet, gopher gibi servislere cevap vermek amacıyla çağırılır.
·/etc/hosts.deny: İçine sınırlandırma getirmek istediğimiz Internet servislerini ve hangi makineler için sınırlandırma yapılacağı bu dosyada belirtilir.
·/etc/hosts.allow: Genellikle hosts.deny dosyasında yer alan makine guruplarından sınırlandırma istenmeyen bir veya birkaç tanesi yazılır. Eğer bir makine ismi ve karşılık gelen Internet adresi her iki dosyada da varsa, söz konusu servise izin verilir.
# /etc/hosts.deny
#
# Tüm makinelerin erişimini engelle.
ALL: ALL
Bir başka örnekte, hosts.deny dosyasından istenmeyen tüm servisler kapatılıyor. Birinci satırdaki ’except localhost’ deyimi, o servisin yerel makine haricinde herkese kapalı olduğunu gösteriyor.
in.telnetd : ALL except localhost
in.rlogind : ALL
in.tftpd : ALL
in.ftpd : ALL except localhost
wu.ftpd : ALL
in.rlogind : ALL
ve hosts.allow dosyasında servis alması istenen makineler için erişim tanımlanıyor:
in.telnetd : .etlik.com.tr
wu.ftpd : .etlik.com.tr
in.rshd : .etlik.com.tr
Genel olarak, sistem ilk önce /etc/hosts.deny dosyasına, ardından /etc/hosts.allow dosyasına bakar. Örnek makine tanımlamaları vermek gerekirse,
·ALL, tüm makineleri tanımlar
·194.27.12.2 tek IP adresini tanımlar
·192.168.1. belirli bir başlangıcı olan IP adresini tanımlar.
·.edu.tr belirli bir alandaki makineleri tanımlar. (burada .edu.tr)
·ya da tek bir makine adı verilebilir
Genel olarak tavsiye edilen ve sistem yöneticileri tarafından da sıkça kullanılan metot, /etc/hosts.deny dosyasından tüm servisleri kapatmak (ALL : ALL satırı yardımıyla), sonra da /etc/hosts.allow dosyasında sadece belirli servisleri belirli makinelere vermektir.

2.4.3 Desteklenen Protokoller

Linux’un protokol desteği diğer işletim sistemlerine nazaran daha çok gelişmiştir. Bu da Linux’u ağ ortamında rakipsiz kılan özelliklerden birisidir. Linux diğer işletim sistemleriyle uyum içinde çalışabilir ve aynı ağ üzerinde kaynak paylaşımı yapabilir.

TCP/IPInternet’in araştırma ağından, tüm dünya tarafından kullanılan çok amaçlı ağa dönüşmesinde en çok etkisi olan protokol TCP/IP’dir. Açık gelişimi nedeniyle ( geliştirilirken hiçbir özelliği gizli kalmamıştır) binlerce programcı tarafından incelenmiş, hatalardan ayıklanmış ve bugün kullandığımız hale gelmiştir.
TCP/IP desteği tüm Linux dağıtımları ile hazır gelir, zira Internet’e bağlanılsın veya bağlanılmasın, makinenin kendisini tanıyabilmesi için bu protokole ihtiyacı vardır ve X Window gibi bazı uygulamalar TCP/IP desteği talep ederler. TCP/IP desteği Internet ve pek çok yerel intranet’ler üzerinde kullanılır.

2.4.3.2 IPX ve Novell Desteği

NCP (NetWare Core Protokol), IPX üzerinde yer alan ve Novell NetWare istemcilerin sunucularla konuşmasını sağlayan protokole verilen isimdir. Bu seçenek ile, NetWare dosya sunucularına diğer UNIX makinelerdeki gibi bağlanmak mümkündür.
NetWare dosya sistemlerine erişebilmek için özel bir mount programı (ncpmount/ncpumount) kullanılır. Bu ve diğer gerekli programlar, en yakın sunsite arşivindeki /system/filesystem/ncpfs dizininden indirilebilir. Bunun için çekirdekte;
The IPX protocol (CONFIG_IPX) [Y/m/n?]
NCP filesystem support (to mount NetWare volumes) (CONFIG_NCP_FS) [Y/m/n/?]
destekleri verilmelidir. Eğer Novell NetWare dosya yada yazıcı sunucularına erişmek gerekirse IPX desteğinin çekirdekte gömülü bulunması gerekir. Linux’u IPX yönlendirici ve NetWare dosya sunucusu yapmak için ayrıca Iwared paketini sunsite arşivindeki system/Network/daemons dizininde bulunabilir. Iwared yerine mars_nwe programı da kullanılabilir. Çekirdeğe eklenen IPX desteğinin yanı sıra sunsite arşivindeki /system/filesystem/ncpfs/ipx.tgz paketinde yer alan uygulama yazılımları ile ağ aygıtlarının IPX desteği almasını ve sistemin bir IPX yönlendirici gibi çalışması sağlanabilir. Böylece tıpkı bir IP yönlendirici gibi IPX paketlerinin de iki IPX ağı arasında yönlendirilmesi mümkün olur.
IPX yönlendirmesi işleminde ise yine bir tablo aracılığı (IPX yönlendirme tablosu) ile hangi paketin hangi arayüze ya da ağa yönlendirilmesi gerektiği hesaplanır ve ağ üzerindeki yönlendirmenin düzenlenmesini ve sorunsuzca çalışmasını sağlamak amacıyla ipxripd daemon kullanılır. Bu programı sunsite /system/filesystem/ncpfs/ dizininde bulunabilir.

2.4.3.3 Appletalk ve Apple Desteği

Aynı ağ üzerinde yer alan Apple Macintosh makineleri ile aynı disk ve yazıcıların paylaşımını sağlayan pakete netatalk ismi verilir. Bu desteği kullanabilmek için çekirdeğin derlenmesi sırasında
IP: multicasting (CONFIG_IP_MULTICAST) [Y/n/?]
The IPX protocol (CONFIG_IPX) [Y/m/n/?]
Appletalk DDP (CONFIG_ATALK) [Y/m/n/?]
parametrelerine evet cevabı verilmelidir. Disk ve yazıcı paylaşımı yapan pakete face=Arial color=#0000ff [Only Registered Users Can See Links] adresinde bulunabilir. Linux aynı zamanda IP temelli bir ağda IPX paketlerini tünelleme metodu ile bir noktadan başka bir noktaya aktarılabilir.

2.4.3.4 Amatör Radyo

Amatör telsizci, kendi devletlerinin verdiği lisanlarla yurt içi ve yurt dışı ile geniş frekans varyasyonlarında birinden, modülasyon tiplerinden herhangi birini kullanarak haberleşen ve bunu hobi olarak yapıp bundan hiçbir menfaat sağlamayan kişilere verilen addır.
Bir başka enteresan ve yeni teknolojilerle iç içe konuda PacketRadio’dur. Bir telsiz modemini kullanarak dünya çapında amatör telsiz ağı içerisinde haberleşmek mümkündür. Bunun birkaç yolu var; biri HF frekansı üzerinden ulaşıla bilineceği gibi bir başka amatör telsiz BBS üzerinden diğerleri ile haberleşmek (eş zamanlı sohbet, elektronik posta, dosya transferi, vb.) mümkündür.
Bu konuda Türkiye’deki ilk uygulama da ODTÜ ve ANTRAK’ın beraberce yaptıkları çalışma sonunda gerçekleştirdikleri ve Internet bağlantısı sağlayan bir sistemdir.
Bir TNC modem üzerinden Linux ve telsiz cihazı arasında bağlantı kurularak amatör radyocunun Internet’e bağlanması ve sörf yapması mümkündür. Hatta Linux’a bir ethernet kartı daha takarak aynı işyerinde birden fazla kullanıcının paket radyo sayesinde Internet’e erişimi sağlanabilir.

2.4.3.5 IPv6

IPv6, halihazırda kullanılmakta olan Internet protokolüne alternatif olarak geliştirilen yeni, gelişmiş ve güvenli bir protokol cinsidir.
IPv4’ün sadece 32 bit kullanan adresleme yeteneği yakın bir zamana kadar dünya üzerindeki mevcut adreslerin yetmemesi yüzünden terk edilecek ve "IP Next Generation" olarak da bilinen IPv6 kullanıma girecek tir. Böylece 128 bit’ten oluşan ve IP sıkıntısını tamamen çözeceğine inanılan bir Internet protokolü kullanılacaktır. Örnek bir IPv6 adresi aşağıda verilmiştir.
FEDC
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
A98:7654:3210:FEDC
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
A98:7654:3210
Linux’un IPv6 desteği donanımdan bağımsız olduğu için Linux’un taşındığı her mimaride sorunsuzca desteklenir. Konu ile ilgili daha geniş bilgi face=Arial color=#0000ff [Only Registered Users Can See Links] adresinden edinilebilir.

2.4.3.6 SAMBA (NetBEUI ve NetBios) Desteği

SMB, Windows 3.11, NT ve 95/98 tarafından kullanılan ve disk ve yazıcı paylaşımına olanak veren bir protokoldür. Linux, Samba desteği ile bu işletim sistemleri veya kendi üzerinde bulunan disk ve yazıcıların tüm makiler tarafından paylaşılmasını sağlar. Bu konu Bölüm 3’te ayrıntılı olarak anlatılmıştır.

2.4.3.7 Bootp Desteği

Elimizde diski ve/veya disket sürücüsü olamayan makinelerin ağa bağlanarak tıpkı diğer makineler gibi kabiliyetli olması için bu desteği kullanabiliriz. Bunun için tek gereken başka bir Linux sunucu makine (bu makinenin diski kullanılacak) ve EROM yakıcı cihazdır. Temel olarak bootp’nin çalışma prensibi şu şekilde açıklanabilir. Disksiz olarak açılan PC, IP numarasını sunucu makineden bootp protokolü yardımıyla ve çalıştırması gereken çekirdeğini tftp yardımıyla alır. Burada dikkat edilmesi gereken bir durum, sunucu makine ile disksiz makinenin aynı ağ üzerinde olması zorunluluğudur.
Bir başka seçenek de disket yardımıyla ağ üzerinden kurulum bilgilerinin alınmasıdır. Bu durumda ethernet kartındaki EPROM’un yakılma zorunluluğu da ortadan kalkar. Her iki seçenekte de Internet’ten EPROM veya disket görüntülerini indirip kullanılabilir. Disksiz Linux kurmak için Diskless Linux mini HOWTO ve/veya en yakın sunsite arşivindeki system/boot/ethernet dizini altında yer alan netboot paketi kullanılabilir.
Bu makineler disk ile yapacağı her işlemi ağ üzerinden gerçekleştirdikleri için ağı çok fazla yükleyebilirler. Bu nedenle aynı ağ üzerinde 15’ten fazla disksiz makinenin kullanılması verimi oldukça düşürür. En iyisi çok mecbur kalmadıkça zaten disk fiyatlarının da oldukça düşük olduğu şu günlerde bootp protokolüne mecbur kalınmadıkça kullanılmamalıdır.

2.4.4 Desteklenen Ağ Teknolojileri

Aşağıda Linux altında destek gören ve kullanılan ağ teknolojilerine örnekler verilmiştir. Bu teknolojilere her gün yenisi eklenmektedir. En güncel bilgiye ulaşabilmek için Ek’ler kısmında yer alan adreslerden erişilebilir.

2.4.4.1 Güvenlik Duvarı (firewall)

Burada güvenlik duvarlarının temel çalışma prensiplerinden ve Linux’un güvenlik duvarı (firewall) olarak yapılandırılmasından bahsedeceğiz.
Bir güvenlik duvarı, bilgisayara ya da bilgisayar ağlarına gelebilecek davetsiz misafirlere karşı koruma amacıyla hazırlanmış programdır. Güvenlik duvarı genel olarak bu amaçla kullanılsa da ağın yapılandırılması üzerinde kolaylaştırıcı etkileri vardır. Örneğin, kullanıcıların her birinin haberi olmadan Internet bağlantılarını yerel ağ üzerindeki proxy’ye yönlendirebilirsiniz. Ya da yerel ağ üzerinde başka bir e-posta sunucusu olmasını istemiyor olabilirsiniz. Bu durumda yerel ağa gelen tüm 25. port isteklerini daha önce e-posta sunucusu olarak görev verilen tek bir makineye yollanabilir. Kullanılabilecek donanım konusunda da 16 MB belleği olan 80846 tabanlı bir sistem bu işi rahatça görecektir.
Tabii güvenlik duvarının bulunduğu makine üzerinde de bazı önlemler almak gerekir. Tavsiye edilen, kullanıcıların bu sistemin erişimine sahip olmamalarıdır. Bununla birlikte her Linux makineye uygulanabilecek birkaç basit güvenil önlemini de almak gerektir. Örnek olarak netstat, systat, bootp ve finger servislerini /etc/inetd.conf dosyasından kapatılmalıdır ve son güncel çekirdek derlenerek makineye yerleştirilmelidir. Güvenlik duvarının gerçekleştirilmesi için, aşağıdaki desteklerin çekirdekte yer alması gerekiyor.
* Networking options
*
Network firewalls (CONFIG_FIREWALL) [Y/n/?]
IP: forwarding/gatewaying (CONFIG_IP_FORWARD) [Y/n/?]
IP: IP: firewalling (CONFIG_IP_FIREWALL) [Y/n/?]
Ayrıca güvenlik duvarının üzerinde işlem yaptığı tüm paketleri klogd tarafından kayda alınması için aşağıdaki desteğinde açık tutulması gerekir.
IP: firewall packet logging (CONFIG_IP_FIREWALL_VERBOSE) [Y/n/?]
Linux’ta güvenlik duvarının yapılandırılması gayet basittir. Ipfwadm paketinden gelen ipfwadm komutu ile paketlerin filtrelenmesi için gereken kurallar belirlenir. Bu kurallar kümesi bir paket ile karşılaştığı zaman o pakete hangi işlemin uygulanacağını söyler. Bunun için bu kuralları belirlemek ve ipfwadm programını çalıştırmak. Her kural için bir paketin silinmesini, başka bir noktaya yönlendirilmesini, hatta ileride istatistiklerden faydalanmak üzere bu paketlerin başlık bilgilerinin yakalanmasını sağlayabiliriz. Yeni bir kural eklemek istediğimizde kulanım:
ipfwadm -I -a accept -P [proto] -S ip/mask [portort] -D ip/mask [portort]
Birkaç örnek vermek gerekirse, 1.2.3.4 IP’sinden size telnet ile bağlanmaya izin verirseniz aşagıdaki gibi iki satır yazılmalıdır. Makinenin IP adresinin 194.27.12.2 olduğunu kabul edelim. Öncelikle makinenin tüm bağlantısını dışarıya kapatalım;
# ipfwadm -I -f
# ipfwadm -I -p deny
Kendi makinemizden gelebilecek tüm bağlantı isteklerine izin vermek için;
# ipfwadm -I -a accept -p all -W lo
komutu kullanılır.
Sonrada dışarıdan gelmesini istediğimiz bağlantı taleplerine izin verelim. Buradaki örnekte 1.2.3.4 IP’sinden gelen telnet isteklerine cevap veriliyor.
# ipfwadm -I -a accept -P tcp -S 1.2.3.4 -D 194.27.12.2 23
# ipfwadm -I -a accept -P udp -S 1.2.3.4 -D 194.27.12.2 23
İki satır olmasının sebebi (tcp ve udp) telnet bağlantısının hem tcp hem de udp protokollerinde çalışmasındandır. Tüm bağlantılar yapılmak istenirse "-P tcp" parametresi yerine "-P all" kullanılmalıdır. Servisler ve protokoller içinde /etc/services dosyası kullanılabilir.

2.4.4.2 IP Accounting

IP Accounting yardımıyla makine üzerinden geçen paketlerin istatistiğinin tutulabilir. Özellikle hangi port üzerinden, toplam uzunluğu da alabileceğimiz kaç paket geçtiğini öğrenebiliriz. Bu istatistiğin alınabilmesi için çekirdekte;
IP: forwarding/gatewaying (CONFIG_IP_FORWARD) [Y/n/?]
IP: accounting (CONFIG_IP_ACCT) [Y/n/?]
desteklerinin bulunması gerekir. IP accounting, Linux’un yönlendirici olarak kullanıldığı durumlarda anlam kazanır. Sistem üzerinden geçen paketlere ait tüm istatistikler /proc/net/ip_acct dosyasında tutulur. Bu yüzden /proc sanal dosya sisteminin de sistemde tanımlı olması gerekir. IP accounting altında hangi portların veri tabanının tutulacağı ipfwadm paketi yardımıyla belirlenir. Bu paket standart Slackware ve RedHat sürümleri ile beraber gelmektedir.

2.4.4.3 ATM (Asynchromous Transfer Mode) Teknolojisi

Ağ teknolojilerinde kullanılan en yeni ve en gelişmiş sistemdir. Hızı saniyede 2 Gbit’tir. Bu yönüyle ses ve görüntü transfer sistemleri için en ideal çözümdür. ATM’ler paket yönlendirme sistemi ile çalışır. Veriler 48 byte’lık veriler halinde taşınmaktadır. Hücre başında yön bilgisini içeren 5 byte’lık bir başlık kullanılmaktadır. ATM teknolojisi ağ düğümleri arasında bir omurga görevi görmek için idealdir. Şu anda çok fazla yaygınlaşmamış ve pahalı olması bir dezavantaj olsa da geleceğin ağ teknolojilerinde başı çekeceği tahmin ediliyor. Bu teknoloji Linux tarafından destekleniyor ancak sınırlı sayıda ATM kartı tanınıyor.

2.4.4.4 DHCP

Bu protokol yardımıyla herhangi bir makine, kendi ağ bilgilerini uzaktaki bir DHCP sunucudan alabilir. Ağ yönetimini kolaylaştırdığı için DHCP yavaş yavaş büyük sistemlerde ve özellikle hareketli donanımların yoğun olduğu yerlerde ağırlığını hissettirmeye başladı. Linux’un DHCP desteği RedHat ile kurulum esnasında geliyor. Linux’ta .dhcp sadece ethernet ağlar üzerinde destekleniyor.

2.4.4.5 IP Aliasing

Tek ağ arabirimi (örneğin ethernet veya seri bağlantı) kartı için birden fazla IP numarası gereken durumlarda IP Aliasing kullanılır. Genellikle ISS’ler müşterilerinin FTP ve
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
sunucularını tek makine üzerinde toplamak için bu yola başvururlar. Bu sayede bir makineye atanmış birden fazla
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
adresi ve her birinin ayrı ve birbirinden bağımsız Web sayfaları farklı makinelerdeymiş gibi kullanılabilir. Bunun için çekirdeğe IP Aliasing desteği verilmelidir.
Network aliasing (CONFIG_NET_ALIAS) [Y/n/?] y
IP: aliasing support (CONFIG_IP_ALIAS) [Y/n?] y
Her sanal ağ adresi için bir arayüz tanımlanmalıdır. Bu sayede aynı bilgisayarda 255 adede kadar sanal makineye izin verilebilir. Her sanal arabirim, bağlı bulunduğu gerçek arabirim üzerinden iş görür. IP Aliasing özelliğini eklemek için iki adıma ihtiyaç vardır. Birincisi ifconfig komutu ile ethernet kartına bir IP numarası vermek .
# /sbin/ifconfig eth0:0 192.168.10.15
Yukarıdaki örnekte 192.168.10.15 IP numarasına gelen istekleri birinci ethernet kartının almasını sağlamak amacıyla bu ethernet kartına bilgi verdik. İkinci adım olarak yönlendirme tablosunu oluşturmamız gerekecek. route komutuyla 192.168.10.15 kaynak adresine sahip tüm paketler eth0:0 tarafından yakalanacaktır.
# /sbin/route add -host 192.168.10.15 dev eth0:0
eth0:0 kartına ait ifconfig çıktısını alırsak,
# ifconfig eth0:0
eth0:0 Link encap:10Mbps Ethernet HWaddr 01:01:01:5B
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
6:AA
inet addr:192.168.10.15 Bcast:192.168.18.255 Mask:255.255.255.0
UP BROADCAST RUNNING MTU:1500 METRIC:1
RX packets:0 errors:0 dropped:0 overruns:0
TX packets:0 errors:0 dropped:0 overruns:0
IP Aliasing ile tanımlanmış ethernet kartının yönlendirme tablosu da aşağıdaki gibi olacaktır. Artık birinci ethernet kartını hem kendi olağan IP numarasını, hem de 192.168.10.15 numaralı IP adresini tanıyabilir.
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.10.15 * * UH 0 0 0 eth0:0
Apache Web sunucusu, IP Aliasing özelliğini destekler ve farklı arabirimlere ya da sanal adreslere gelen http isteklerine farklı yanıtlar verebilir.

2.4.4.6 IP Masquerading (IP Gizleme)

IP gizleme, bir ağın arkasındaki birden fazla makinenin bir Linux sunucu üzerinden dışarıya bağlanmasıdır. Tüm makineler diş dünyaya aynı IP adresine sahipmiş gibi görünürler.
Örneğin, bir kurumda birden fazla makine var ve siz her makineyi Internet’e açmak istiyorsunuz. Bunun için, her makine için servis sağlayıcıya para ödeyip hesap ismi almaktansa odadaki tüm bilgisayarlar bir Linux ve telefon bağlantısı yardımıyla Internet’e erişebilir. Aşağıda, bir çevirmeli telefon ağı arkasından birkaç makinenin Internet’e çıkması için gereken ayarlamalar verilmiştir. Bu örnekte kullandığımız Linux dağıtımı Slackware’dir. Slackware’de tüm IP Masquerading (IPM) destekleri modül olarak derlenmiştir, bu nedenle IPM kullanmak için çekirdeği tekrar derlemeye gerek yoktur. Ancak diğer dağıtımlarda emin olmak için çekirdeğe IPM desteğini modül olarak veya çekirdeğe gömülü olacak şekilde derlenmelidir. Bunun için aşağıdaki destekler açılmalıdır.
IP: Forwarding/Gatewaying (CONFIG_IP_FORWARD)
IP: Masquerading (CONFIG_IP_MASQUERADE)
IP: ipautofw (CONFIG_IP_MASQUERADE_IPAUTOFW)
IP: ICMP masquerading (CONFIG_IP_ MASQUERADE _ICMP)
IP: always defragment (CONFIG_IP_ALWAYS _DEFRAG)
Dummy Net Driver Support (CONFIG_DUMMY)
Bundan sonra "make modules" ve "make modules_install" komutlarıyla çekirdek derlenmelidir. Eğer modül olarak derlendiyse "/etc/rc.d/rc.local" dosyasına aşağıdaki satırlar eklenmelidir.
depmod -a
/sbin/insmod ip_alias
/sbin/insmod ip_masq_ftp
/sbin/insmod ip_masq_quake
/sbin/insmod ip_masq_cuseeme
/sbin/insmod ip_masq_irc
/sbin/insmod ip_masq_raudio
/sbin/insmod ip_masq_vdolive
Bu satırlar gerekli modülleri çekirdeğe ekleyecektir. Şimdi IPM’i çalıştırmak için aşağıdaki ipfwadm komut setinden yararlanacağız. Bu satırlar yine aynı dosyaya eklenmelidir. Çünkü Linux açılırken tüm satırların çalışması gereklidir.
/sbin/ipfwadm -I -p accept
/sbin/ipfwadm -I -f
/sbin/ipfwadm -O -p accept
/sbin/ipfwadm -O -f
/sbin/ipfwadm -F -p deny
/sbin/ipfwadm -F -f accept
/sbin/ipfwadm -F -a masquerade -S 192.168.1.1 -D 0.0.0.0/0
/sbin/ipfwadm -F -a masquerade -S 192.168.1.2 -D 0.0.0.0/0
Yukarıdaki 192.168.1.1 adresi, Linux makinenin ethernet kartına ait adrestir. 192.168.1.2 ise Linux’a ethernet kartıyla bağlı Windows( veya başka bir Linux) makinenin ethernet kartının IP numarasıdır. Bu IP numaraları istenilen bir aralıkta seçilebilir. Yukarıdaki satırlar çalıştıktan ve Linux Internet’e bağlandıktan sonra arkasındaki makinelerde Linux üzerinden Internet erişimi yapacaktır. Internet’e çıkmak için Linux’un araksında Windows 95/98 kullanılıyorsa, yapılması gereken işlemler çok basit. Öncelikle ethernet kartının sürücüleri Windows’a kurulduktan ve ağ ayarları yapıldıktan sonra "Start, Settings, Control Panel, Network (Başlat,Ayarlar, Denetim Masası, Ağ)" den TCP/IP özellikleri seçilir. Buradan ethernet kartının Gateway (Ağ geçidi) 192.168.1.1 olarak girilmelidir. DNS yapılandırması için ISS’ den gerekli bilgiler alınmalıdır. Linux sunucunun ardında sadece Windows değil, hemen her türlü işletim sistemi Internet’e açılabilir.

2.4.4.7 IP Multicasting

Geleneksel IP yönlendirmesinin altında bir gönderen (sunucu) bir de alan (istemci) yatar. IP multicasting teknolojisinde ise bir sunucudan gönderilen mesaj birden çok noktaya ulaşabilir. Ayrıca bir yayının ne kadar uzağa (yerel ağ, kampus, şehir vs.) ulaşabileceği de sınırlanabilir. Özellikle ses ve görüntü iletişiminde kullanılan IP multicasting teknolojisi Linux altında beklenildiği gibi yaygınlaşamamıştır.

2.4.4.8 Proxy

Bir proxy, yerel ağ ile dış dünya arasında yer alan ve başta bilginin güvenli bir şekilde temini ve paketlerin depolanmasını sağlayan programdır. Proxy ön belleği yardımıyla yerel ağdaki istemci, dışarıdaki bir sunucuya doğrudan bağlanmadan yine yerel ağdaki sunucu üzerinden servis alır. Proxy sunucu bir istek aldığı anda eğer bu isteği kendi disk alanından karşılayabiliyor ise istemciye doğrudan gönderir, aksi takdirde asıl sunucuya bağlanır ve bu sunucudan aldığı bilgileri istemciye yollar. Bu sırada yolladığı paketleri, ileride gelebilecek istekleri karşılayabilmek amacıyla depolar. Böylelikle birkaç bilgisayarın aynı anda aynı bilgileri almak için mevcut band genişliğini kullanmaları önlenmiş olur. Ayrıca yerel ağdan daha hızlı bilgi transferi gerçekleştirilebilir. İstatistikler, proxy kullanan ağlarda performans artışının %40’lara kadar ulaştığını göstermiştir. Özellikle kısıtlı band genişliğine sahip organizasyonlarda bir proxy sisteminin kurulumu büyük bir önem taşır.
Linux’ta squid adlı proxy yazılımı sıkça kullanılmaktadır. Proxy, ipfwadm birlikte kurulursa kullanıcıların haberi olmadan ağdan dışarıya gidecek belirli paketlerin proxy’ye yönlendirilmesi sağlanabilir. Squid’in şeffaf proxy özelliği yardımıyla cache alan bir sunucunun yerel ağda yada bir servis sağlayıcıda çalışması mümkün. Biraz UNIX ağ bilgisine sahip birisi squid’i rahatlıkla kurabilir ve band genişliğinden böylelikle en yüksek performans sağlamış olur. Ancak Türkiye’deki proxy sunucuların fazla bilinmemesi ve yetersiz sayıda olması, zaten sıkıntılı durumda olan dış hat kapasitesinin iyice verimsiz kullanılmasına yol açmaktadır.
Paket kaydetmenin ne kadar gerekli olduğu konusunda bazı şüpheler uyanabilir. Küçük bir disk alanını (birkaç GB) bu iş için kullanılacaksa sürekli olarak taranan (Netscape, Altavista, Microsoft) Web sayfalarının taşınmasında büyük tasarruf sağlayacaktır. Bu miktar yerine göre %’lere (TCP_HIT) kadar çıkabilir. Ancak disk alanını ikiye katlamak, TCP_HIT’te beklenen iki kat artış etkisini vermeyebilir.
Squid’in bazı özelliklerine yer vermek gerekirse,
·Squid, hangi paketlerin kaydının tutulabileceğini bilir. İçinde "?" ya da "/cgi-bin/" geçen sayfalar (kredi kartları, CGI programlarının çıktıları vb.) kayda geçmez.
·Squid’in gelişmiş bir hata ve bilgilendirme sistemi vardır. Bu sayede istatistiksel bilgiler anında alınabiliyor.
·Bir squid, diğer squid sunucular ile konuşabilir. Böylece geniş bir kurum ve ülke bazında her sunucunun yükü paylaşılır. Almanya ve İngiltere’de squid kullanıcıları band yüklerini ayarlamak amacıyla sürekli temas halindedir.
·Hangi sayfanın ne kadar süre ile ne kadar disk alnı üzerinde tutulacağı belirtilebilir.
·150’den fazla geliştirici tarafından yazılan squid; FTP, gopher, HTTP obje kayıtlarını yapabilir. SSL (Secure Shell Layer) taleplerini destekler.
·Squid’in geniş bir platform desteği vardır. AIX, HP/UX, IRIX, Linux, OSF1 ve Solaris gibi tüm modern UNIX’ler altında çalışabilir

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]


Konu Julw tarafından (10 Şubat 2008 Saat 17:56 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet reklamver
Alt 11 Şubat 2008, 12:14   #2
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Linux ve Ağ Yönetimi




Emeğine sağlık, linux zor
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

 
Alıntı ile Cevapla

Cevapla

Etiketler
linux, yonetimi, yönetimi


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Linux Sunucuda 2. Diski Tanımlamak – Linux Sunucuda 2. Diski Yedekleme İçin Kullanmak Kjm GNU, Linux ve UNIX 0 24 Kasım 2013 13:48
Linux Sistem Yönetimi Yaz Kampı 2011 Ocean GNU, Linux ve UNIX 0 17 Temmuz 2011 23:02
Spotlight on Linux: Pardus Linux 2009.2 Ocean GNU, Linux ve UNIX 0 30 Temmuz 2010 17:46
Hangi Linux'u kullanmalıyım?, "Hangi Linux bana göre?" sorularının cevabı burada PaYanDA GNU, Linux ve UNIX 10 23 Ekim 2006 00:26
GNU / GPL / Linux ve Linux Dagitimlari Caistlin GNU, Linux ve UNIX 10 30 Haziran 2006 21:17