Kapan jaringan, siaran, dan gateway diperlukan untuk mengkonfigurasi antarmuka jaringan secara manual?

10

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

URL di atas mengatakan, berikut ini. Tetapi tidak jelas bagi saya kapan itu opsional dan kapan tidak. Bisakah Anda memberi saya beberapa tautan ke referensi yang menjelaskan hal ini? Terima kasih.

Jika Anda mengonfigurasinya secara manual maka sesuatu seperti ini akan mengatur gateway default (jaringan, broadcast, dan gateway opsional):

auto eth0
iface eth0 inet static
    address 192.0.2.7
    netmask 255.255.255.0
    gateway 192.0.2.254
pengguna1424739
sumber
2
Dalam versi Ubuntu terbaru, yang menggunakan dnsmasq, Anda juga perlu mendeklarasikan server nama DNS.
chili555
@ chili555, yang berfungsi jika Anda menambahkan paket resolvconf. Baca jawaban saya di bawah ini. ;-) Apakah Anda setuju dengan jawabannya, user1424739?
Anders
Saya percaya pada versi Ubuntu baru-baru ini, bahwa resolvconf diinstal secara default; tidak??
chili555
1
Bisakah Anda meluangkan waktu untuk meninjau jawaban @Anders. Lihat Apa yang harus saya lakukan ketika seseorang menjawab pertanyaan saya?
user.dz
@ chili555 Ya, benar. Tapi saya hanya ingin menjelaskan koneksi antara paket itu dan dns-server di / e / n / interface. Maaf jika saya tidak jelas.
Anders

Jawaban:

25

Cara mengatur alamat IP statis dan alasannya

Memperhatikan! Saya tidak berbicara tentang cara-cara lain mengatur jaringan seperti dengan NetworkManager. Perangkat apa pun yang disebutkan dalam /etc/network/interfacestidak disentuh oleh NM

Untuk dapat berkomunikasi melalui jaringan IP (IPv4 dan IPv6) komputer harus tahu alamat IP yang dimilikinya. Jadi karena addressitu diperlukan arahan untuk memberitahu komputer itu.

Ketika komputer kemudian ingin berbicara dengan komputer lain, ia menggunakan alamat IP komputer lain itu untuk memeriksa apakah komputer itu berada di jaringan yang sama, LAN. Jika demikian, komputer dapat berkomunikasi langsung dengan komputer lain.

Jadi bagaimana komputer tahu kapan berkomunikasi dengan komputer di LAN yang sama? Dengan menggunakan jaringan netmask, di mana bagian bersih dari alamat diatur ke yang dan bagian host diatur ke nol. Jadi dengan melakukan operasi bitwise DAN antara setiap bit dalam alamat IP dan netmask kita akan mendapatkan alamat jaringan dari alamat IP, di mana bagian host adalah nol. Jadi jika kita melakukan ini pada alamat IP komputer dan alamat IP komputer lain kita mendapatkan setiap alamat jaringan .. Jika mereka sama, itu berarti bahwa komputer berada di jaringan yang sama dan dapat berbicara langsung satu sama lain.

Jika alamat jaringan tidak sama mereka berada di LAN yang berbeda dan tidak dapat berkomunikasi secara langsung satu sama lain. Maka komputer perlu menggunakan komputer khusus yang terhubung ke LAN lain. Komputer itu adalah router (yang juga bisa memiliki firewall dan NAT). Jadi ketika komputer ingin berbicara dengan komputer lain di luar LAN, perlu mengetahui alamat komputer yang diatur dengan gatewaydirektif. Jika antarmuka lain telah menetapkan gatewaynilai, Anda tidak dan tidak seharusnya mengatur direktif gateway lain untuk antarmuka ini. The gatewayset direktif rute default untuk komputer, sehingga Anda hanya perlu satu untuk IPv4 dan hanya satu untuk IPv6 pada setiap mesin. Alamat jaringan ini dapat diatur secara manual dengan networkarahan.

Terkadang komputer ingin berkomunikasi dengan semua komputer di LAN, dan komputer itu menggunakan alamat broadcast. Alamat ini didengarkan oleh semua komputer di LAN yang sama. Ini pada dasarnya sama dengan alamat jaringan, kecuali bagian host tidak semua nol dan bukan semua nol. Alamat siaran ini diatur oleh arahan broadcastdi antarmuka.

networkAlamat antarmuka hanya perlu dihitung sekali dan biasanya dihitung dengan benar dari sana addressdan netmaskarahan. Sama dengan broadcastalamatnya. Jadi Anda tidak perlu mengaturnya. Bahkan jika Anda menetapkan satu atau keduanya ke nilai yang salah, Anda bisa kehilangan koneksi ke internet dan komputer lain di LAN Anda. Jadi, kecuali Anda memiliki beberapa nilai aneh pada mereka, biarkan komputer menghitungnya untuk Anda.

Jadi pengaturan statis minimal, atau bait, /etc/network/interfacesbisa terlihat seperti ini untuk perangkat eth1di jaringan pribadi:

iface eth1 static inet
     address   192.168.44.10
     netmask   255.255.255.0
     gateway   192.168.44.1

Bagaimana cara kerja penyelesaian nama dan bagaimana itu terkait dengan DNS

Nama domain digunakan untuk mengkonversi antara mudah bagi manusia untuk membaca dan mengingat nama domain dan komputer tidak begitu mudah untuk mengingat alamat IP, yang disebutkan di atas. Ini disebut Penyelesaian Nama .

Ini biasanya dikendalikan oleh file /etc/nsswitc.confdan baris yang dimulai dengan hosts:. Jika Anda meminta komputer untuk terhubung ke komputer my.example.com, ia akan melihat ke dalam file ini dan mencoba menyelesaikan alamat IP dari namanya my.example.com. File ini sebenarnya tidak menjawab pertanyaan "IP mana yang dimiliki my.example.com", hanya memberitahu komputer di mana ia dapat menemukan jawabannya.
Biasanya ia mencoba /etc/hostsfile pertama untuk nama lokal statis, kemudian avahi mDNSuntuk nama lokal dinamis dan kemudian resovler nama domain DNS untuk mendapatkan nama dari internet.

Jika beberapa di antaranya lambat dalam menjawab pertanyaan Anda, ini mungkin terlihat seperti komputer macet untuk sementara waktu. Jadi jika Anda mendapatkannya, periksa penyelesaian nama terlebih dahulu.

Jadi menambahkan alamat statis Anda bisa menambahkannya ke /etc/hostsfile Anda . By the way, jika Anda memiliki alamat statis, Anda mungkin harus mengubah alamat IP di sana untuk mesin Anda ke alamat IP Anda dan bukan default 127.0.1.1(yang ada di jaringan localnet di mana localhost berada, 127.0.0.1). Itu hanya berfungsi baik untuk klien dan bukan untuk server.

Alamat dinamis yang Anda dapatkan dari mesin Linux dengan avahipaket dan dari mesin Apple (dan MS Windows dengan iTunes?). Itu ditangani oleh "sihir" dan Anda tidak perlu memperbaikinya.

DNS digunakan untuk mencapai internet dan Anda harus memberi tahu komputer di mana server DNS yang ingin Anda gunakan, alamat IP apa yang digunakan dan apa domain DNS default Anda.

Ini dilakukan dalam file /etc/resolv.confdan dapat diatur secara statis. Ini tidak berfungsi dengan baik di dunia kami yang tidak terlalu statis, jadi biasanya Anda memiliki paket yang disebut resolvconfdiinstal. Ini memungkinkan Anda mengatur pengaturan ini dalam /e/n/interfacesfile.

Jadi, jika kami menganggap kami ingin menambahkan salah satu server DNS Google 8.8.8.8,, dan server DNS ISP Anda 192.0.2.1,, dan domain my.example.orgdomain Anda sebagai default, Anda cukup mengedit /etc/network/interfacesfile dan menambahkan dua baris ini dalam bait untuk perangkat statis.

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

Anda juga mungkin memperhatikan bahwa resolver DNS hanya akan menggunakan maksimum tiga server DNS. Silakan lihat ini di- manhalaman resolv.conf. Seperti biasa, Anda dapat menggunakan perintah man nsswitch.conf, man resolv.confdan man resolvconfuntuk informasi lebih lanjut.

Juga perhatikan bahwa saya menggunakan domain example.com dan example.org dan jaringan IP 192.0.2.0/24 untuk ISP misalnya server DNS. Ini didefinisikan secara eksplisit untuk digunakan dalam contoh. Lihat http://example.com/ atau http://tools.ietf.org/html/rfc2606 dan rfc5735

Bagaimana Anda memeriksa apakah itu berfungsi?
Anda dapat melakukannya dengan banyak cara, tetapi biasanya saya gunakan

getent hosts my.test.com

untuk menguji seluruh pengaturan untuk resolusi nama. Jika saya hanya ingin memeriksa apakah DNS berfungsi, saya menggunakan salah satu dari perintah ini:

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

Tapi ingat itu hanya menguji DNS melalui pengaturan dalam /etc/resolv.conffile, dan bukan /etc/nsswitch.confbagian. Mungkin apa yang Anda inginkan, atau tidak.

Anders
sumber
1
Penjelasan yang bagus, Terima kasih. Seperti chili555 menyebutkan pentingnya DNS untuk menyelesaikan nama domain, alangkah baiknya jika Anda menambahkan poin tentang itu. (Adapun koneksi Internet atau WAN, diperlukan untuk mengatur semua)
user.dz
Sesuatu seperti ini?
Anders
1
Sama sama. :-) Bertanya-tanya apakah itu jawaban yang cukup baik untuk user1424739
Anders
Lagi pula, /etc/internet/interfacesakan menjadi usang oleh Ubuntu, mendukung mereka sendiri NetPlan, lihat /etc/netplan/*.yamldan NM(yang dapat dimodifikasi dengan nm-tools).
Anders