Bir ağ arabirimini manuel olarak yapılandırmak için ağ, yayın ve ağ geçidi ne zaman gereklidir?


10

https://wiki.debian.org/NetworkConfiguration#Bridging_without_Switching

Yukarıdaki URL şunu söylüyor. Ama ne zaman isteğe bağlı oldukları ve ne zaman olmadıkları belli değil. Bana bunu tanımlayan referanslara bir bağlantı verebilir misiniz? Teşekkürler.

Manuel olarak yapılandırıyorsanız, böyle bir şey varsayılan ağ geçidini ayarlar (ağ, yayın ve ağ geçidi isteğe bağlıdır):

auto eth0
iface eth0 inet static
    address 192.0.2.7
    netmask 255.255.255.0
    gateway 192.0.2.254

2
Dnsmasq kullanan son Ubuntu sürümlerinde, DNS ad sunucularını da bildirmeniz gerekir.
chili555

@ chili555, resolvconf paketini eklerseniz çalışır. Cevabımı bunun altında okuyun. ;-) Cevapla iyi misin user1424739?
Anders

Son Ubuntu sürümlerinde, resolvconf'un varsayılan olarak yüklendiğine inanıyorum; Hayır??
chili555

1
@Anders cevabını incelemek için biraz zaman ayırabilir misiniz? Bkz . Birisi sorumu yanıtladığında ne yapmalıyım?
user.dz

@ chili555 Evet, öyle. Ama ben sadece / e / n / arayüzlerinde bu paket ve dns-sunucular arasındaki bağlantıyı netleştirmek istedim. Belirsiz olsaydım üzgünüm.
Anders

Yanıtlar:


25

Statik IP adresi nasıl ayarlanır ve neden

Farkına varmak! NetworkManager'da olduğu gibi ağ kurmanın diğer yolları hakkında konuşmuyorum. Bahsedilen /etc/network/interfaceshiçbir cihaza NM tarafından dokunulmaz

Bir IP ağı (IPv4 ve IPv6) üzerinden iletişim kurabilmek için bilgisayarın hangi IP adresine sahip olduğunu bilmesi gerekir. Bu nedenle addressbilgisayara bunu söylemek için direktif gereklidir.

Bilgisayar daha sonra başka bir bilgisayarla konuşmak istediğinde, o bilgisayarın aynı ağda olup olmadığını kontrol etmek için diğer bilgisayarların IP adresini kullanır, LAN. Öyleyse, bilgisayar diğer bilgisayarla doğrudan iletişim kurabilir.

Peki aynı LAN üzerindeki bir bilgisayarla ne zaman iletişim kurduğunu nasıl bilebilir? netmaskAdresin net kısmının, ana kısmının sıfır olarak ayarlandığı ağları kullanarak . Bu nedenle, bir IP adresindeki her bit ve ağ maskesi arasında bitsel bir AND işlemi yaparak, ana bilgisayar parçasının sıfır olduğu IP adresinin ağ adresini alırız. Yani bunu bilgisayarların IP adreslerinde ve diğer bilgisayarların IP adreslerinde yaparsak, her ağ adresini alırız .. Eşitse, bu bilgisayarlar aynı ağda ve doğrudan birbirleriyle konuşabilir anlamına gelir.

Ağ adresleri eşit değilse farklı LAN'lardadır ve doğrudan birbirleriyle iletişim kuramazlar. Daha sonra bilgisayarın diğer LAN'lara bağlı özel bir bilgisayar kullanması gerekir. Bu bilgisayar bir yönlendiricidir (güvenlik duvarı ve NAT da olabilir). Dolayısıyla, bilgisayar LAN dışındaki diğer bilgisayarlarla konuşmak istediğinde, gatewayyönerge ile belirlenen bilgisayarın adresini bilmelidir . Başka bir arabirim zaten bir gatewaydeğer ayarladıysa, bu arabirim için başka bir ağ geçidi yönergesi ayarlamaz ve ayarlamamanız gerekir. gatewayYönerge seti bilgisayar için varsayılan rota, her makinede sadece bir IPv4 için ve sadece bir IPv6 için ihtiyaç yüzden. Bu ağ adresi networkyönerge ile manuel olarak ayarlanabilir .

Bilgisayar bazen LAN'daki tüm bilgisayarlarla iletişim kurmak ister ve yayın adresi kullanır. Bu adres, aynı LAN'daki tüm bilgisayarlar tarafından dinlenir. Bu, temel olarak ağ adresiyle aynıdır, ancak ana bilgisayar bölümü tümüyle sıfırlar ve bunun yerine tüm adresler değildir. Bu yayın adresi, broadcastarayüzdeki yönerge tarafından ayarlanır .

Arayüz networkadresinin sadece bir kez hesaplanması gerekir ve genellikle bu addressve netmaskdirektiflerden doğru şekilde hesaplanır . broadcastAdres ile aynı . Yani onları ayarlamanıza gerek yok. Aslında, yanlış değerlerden birini veya her ikisini birden ayarlarsanız, İnternet'e ve LAN'ınızdaki diğer bilgisayarlara olan bağlantınızı kaybedebilirsiniz. Dolayısıyla, üzerinde garip değerler yoksa, bilgisayarın bunları sizin için hesaplamasına izin verin.

Dolayısıyla, minimal bir statik ayar veya stanza, özel bir ağdaki /etc/network/interfacescihaz için aşağıdaki gibi görünebilir eth1:

iface eth1 static inet
     address   192.168.44.10
     netmask   255.255.255.0
     gateway   192.168.44.1

Ad çözümleme nasıl çalışır ve DNS'ye nasıl bağlanır.

Etki alanı adları, insanların yukarıda belirtilen etki alanı adlarını okuması ve hatırlaması ve yukarıda bahsedilen IP adresini hatırlaması kolay olmayan bilgisayarlar arasında dönüştürme yapmak için kullanılır. Buna Ad Çözümleme denir .

Bu genellikle dosya /etc/nsswitc.confve ile başlayan çizgi tarafından kontrol edilir hosts:. Bilgisayardan bilgisayara bağlanmasını isterseniz my.example.com, bu dosyaya bakar ve IP adresini adından çözmeye çalışır my.example.com. Bu dosya aslında "hangi my.example.com sahip olduğu IP" sorusuna cevap vermez, sadece cevabı nerede bulabileceğini söyler.
Genellikle /etc/hostsstatik yerel adlar için önce dosyayı, daha sonra mDNSdinamik yerel adlar için avahi'yi ve daha sonra internetten bir ad almak için bir DNS etki alanı adı çözücü çalışır.

Bunlardan bazıları sorularınızı yanıtlamakta yavaş kalıyorsa, bilgisayar bir süre takılıp kalabilir. Eğer bunu alırsanız, önce adın çözülmesini kontrol edin.

Statik adresler ekleyerek onu /etc/hostsdosyanıza ekleyebilirsiniz . Bu arada, statik bir adresiniz varsa, muhtemelen makinenizin IP adresini varsayılan olarak değil, IP adresinize değiştirmelisiniz 127.0.1.1(localhost'un bulunduğu yerel ağda bulunur 127.0.0.1). Bu sadece istemciler için iyi çalışır, sunucular için değil.

avahiPaketle birlikte Linux makinelerinden ve Apple makinelerinden (ve iTunes ile MS Windows?) Aldığınız dinamik adresler . Bu "sihir" tarafından ele alınır ve bunu düzeltmenize gerek kalmaz.

DNS, İnternet'e erişmek için kullanılır ve bilgisayara, kullanmak istediğiniz DNS sunucularının nerede olduğunu, hangi IP adresinin kullanılacağını ve varsayılan DNS etki alanınızın ne olduğunu söylemeniz gerekir.

Bu dosyada yapılır /etc/resolv.confve statik olarak ayarlanabilir. Bu çok statik olmayan dünyamızda iyi çalışmıyor, bu yüzden genellikle resolvconfkurulu denilen bir paketiniz var . Bu, bu ayarları /e/n/interfacesdosyada ayarlamanızı sağlar.

Bu nedenle, Google'ın DNS sunucularından birini 8.8.8.8ve ISS'nizin DNS sunucusunu 192.0.2.1ve alan my.example.orgadı alan adınızı varsayılan olarak eklemek istediğimizi varsayarsak , /etc/network/interfacesdosyayı düzenler ve bu iki satırı statik cihazın stanzasına eklersiniz.

    dns-nameservers   8.8.8.8  192.0.2.10
    dns-search        my.example.org

DNS çözümleyicisinin yalnızca en fazla üç DNS sunucusu kullanacağını da fark edebilirsiniz. Lütfen bu mansayfanın sayfasından bakın resolv.conf. Genellikle olarak, sen komutunu kullanabilirsiniz man nsswitch.conf, man resolv.confve man resolvconfdaha fazla bilgi için.

Ayrıca ISS örnek DNS sunucusu için example.com ve example.org ve IP ağ 192.0.2.0/24 etki alanını kullandığımı da unutmayın. Bunlar örneklerde kullanılmak üzere açıkça tanımlanmıştır. Bkz. Http://example.com/ veya http://tools.ietf.org/html/rfc2606 ve rfc5735

Daha sonra bunun çalışıp çalışmadığını nasıl kontrol edersiniz?
Bunu birçok şekilde yapabilirsiniz, ancak genellikle

getent hosts my.test.com

kurulumun tamamını ad çözümlemesi için sınamak. DNS'nin çalışıp çalışmadığını kontrol etmek istersem şu komutlardan birini kullanırım:

host my.test.com
dig my.test.com

Ancak, bunların DNS'yi yalnızca /etc/resolv.confdosyadaki ayarlarla test ettiğini , /etc/nsswitch.confparçayı test etmediğini unutmayın . İstediğiniz şey olabilir ya da olmayabilir.


1
Güzel açıklama, teşekkür ederim. Chili555, alan adlarını çözmek için DNS'nin öneminden bahsettiği gibi, bu konuda bir nokta eklerseniz iyi olur. (İnternet veya WAN bağlantılarına gelince, hepsinin kurulması gerekir)
user.dz

Böyle bir şey mi?
Anders

1
Rica ederim. :-) Kullanıcı için yeterince iyi bir cevap olup olmadığını merak ediyorum1424739
Anders

Her neyse, /etc/internet/interfacesUbuntu tarafından, kendileri lehine NetPlan, görmek /etc/netplan/*.yamlve NM(ile değiştirilebilir nm-tools) lehine olmak üzeredir .
Anders
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.