hosts failas ubuntu. Kaip redaguoti pagrindinio kompiuterio failą Ubuntu

Geras laikas, mieli skaitytojai. Skelbiu antrą dalį. Dabartinis skyrius skirtas tinklo diegimas Linux sistemoje(kaip nustatyti tinklą Linux sistemoje, kaip diagnozuoti tinklą Linux sistemoje ir prižiūrėti tinklo posistemį Linux sistemoje).

TCP/IP konfigūravimas sistemoje „Linux“, skirtas Ethernet tinklui

Norint dirbti su TCP / IP tinklo protokolais Linux sistemoje, pakanka turėti tik kilpos sąsaja, bet jei reikia derinti hostus tarpusavyje, žinoma, reikia tinklo sąsajos, duomenų perdavimo kanalų (pavyzdžiui, vytos poros), galbūt kokios nors tinklo įrangos. Be to, būtina turėti įdiegtą (ir tt), paprastai tiekiama . Jis taip pat turi turėti tinklą (pvz., /etc/hosts) ir tinklo palaikymą.

Ryšio nustatymai

Pradėkime suprasti „Linux“ tinklo mechanizmus rankiniu būdu sukonfigūruodami tinklą, tai yra, nuo atvejo, kai IP adresas tinklo sąsaja statinis. Taigi, nustatydami tinklą, turite atsižvelgti ir sukonfigūruoti šiuos parametrus:

IP adresas- kaip jau minėta pirmoje straipsnio dalyje - tai unikalus mašinos adresas, keturių dešimtainių skaičių, atskirtų taškais, formatu. Paprastai dirbant vietinis tinklas, pasirinktas iš privačių diapazonų, pavyzdžiui: 192.168.0.1

Potinklio kaukė- taip pat 4 dešimtainiai skaičiai, nurodantys, kuri adreso dalis nurodo tinklo / potinklio adresą, o kuri - pagrindinio kompiuterio adresą. Potinklio kaukė yra skaičius, kuris pridedamas (dvejetaine forma) su IP adresu, siekiant išsiaiškinti, kuriam potinkliui priklauso adresas. Pavyzdžiui, adresas 192.168.0.2 su kauke 255.255.255.0 priklauso potinkliui 192.168.0.

Potinklio adresas- nustatoma pagal potinklio kaukę. Tuo pačiu metu nėra atgalinių sąsajų potinklių.

Transliacijos adresas- adresas, naudojamas siunčiant transliavimo paketus, kuriuos priims visi potinklio pagrindiniai kompiuteriai. Paprastai jis yra lygus potinklio adresui, kurio pagrindinio kompiuterio reikšmė yra 255, ty 192.168.0 potinklyje transliacija bus 192.168.0.255, panašiai, 192.168 potinklyje, transliacija bus 192.168.255.255. Atgalinės sąsajos transliacijos adreso nėra.

Šliuzo IP adresas yra įrenginio adresas, kuris yra numatytasis ryšio su išoriniu pasauliu vartai. Jei kompiuteris vienu metu prijungtas prie kelių tinklų, gali būti keli šliuzai. Šliuzo adresas nenaudojamas izoliuotuose tinkluose (neprijungtuose prie WAN), nes šie tinklai neturi kur siųsti paketų už tinklo ribų, tas pats pasakytina ir apie loopback sąsajas.

Vardų serverio IP adresas (DNS serveris)- serverio, kuris konvertuoja pagrindinio kompiuterio pavadinimus į IP adresus, adresas. Paprastai teikia IPT.

„Linux“ tinklo nustatymų failai (konfigūracijos failai)

Norėdami suprasti „Linux“ tinklą, tikrai patarčiau perskaityti straipsnį „“. Apskritai, visi Linux darbas yra pagrįstas , kuris gimsta, kai OS paleidžiama ir sukuria jos palikuonis, kurios savo ruožtu atlieka visą reikiamą darbą, nesvarbu, ar tai veikia bash, ar demonas. Taip, ir visa „Linux“ įkrova yra pagrįsta, kuri nusako visą mažų paslaugų paleidimo su įvairiais parametrais seką, kuri nuosekliai paleidžiama / sustabdoma, kai sistema paleidžiama / sustoja. „Linux“ tinklo posistemis paleidžiamas taip pat.

Kiekvienas Linux platinimas turi šiek tiek skirtingą tinklo inicijavimo mechanizmą, bet bendras vaizdas, manau, perskaičius bus aiškus. Jei pažvelgsite į kai kurių tinklo posistemio pradžios scenarijus Linux platinimas, tada, kaip nustatyti tinklo konfigūraciją naudojant konfigūracijos failus, bus daugiau ar mažiau aišku, pavyzdžiui, Debian'e (mes remsimės šiuo paskirstymu), scenarijus yra atsakingas už tinklo inicijavimą /etc/init.d/networking peržiūrint, kuri:

Tinklo serveris:~#cat /etc/init.d/networking #!/bin/sh -e ### PRADĖTI INFORMACIJĄ # Pateikiama: tinklo kūrimas # Reikalingas - Pradėti: mountkernfs $local_fs # Reikalingas - Stop: $local_fs # Reikėtų -Start: ifupdown # Turėtų-Stop: ifupdown # Default-Start: S # Default-Stop: 0 6 # Trumpas aprašymas: Pakelkite tinklo sąsajas. ### END INIT INFO PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin" [ -x /sbin/ifup ] || išėjimas 0. /lib/lsb/init-functions process_options() ( [ -e /etc/network/options ] || return 0 log_warning_msg "/etc/network/options vis dar egzistuoja ir jis bus IGNOREMAS! Skaitykite README.Debian of netbase." ) check_network_file_systems() ( [ -e /proc/mounts ] || grąžina 0, jei [ -e /etc/iscsi/iscsi.initramfs ]; then log_warning_msg "nedekonfigūruojamos tinklo sąsajos: prijungta iSCSI šaknis." išeiti 0 fi exec 9<&0 < /proc/mounts while read DEV MTPT FSTYPE REST; do case $DEV in /dev/nbd*|/dev/nd*|/dev/etherd/e*) log_warning_msg "not deconfiguring network interfaces: network devices still mounted." exit 0 ;; esac case $FSTYPE in nfs|nfs4|smbfs|ncp|ncpfs|cifs|coda|ocfs2|gfs|pvfs|pvfs2|fuse.httpfs|fuse.curlftpfs) log_warning_msg "not deconfiguring network interfaces: network file systems still mounted." exit 0 ;; esac done exec 0<&9 9<&- } check_network_swap() { [ -e /proc/swaps ] || return 0 exec 9<&0 < /proc/swaps while read DEV MTPT FSTYPE REST; do case $DEV in /dev/nbd*|/dev/nd*|/dev/etherd/e*) log_warning_msg "not deconfiguring network interfaces: network swap still mounted." exit 0 ;; esac done exec 0<&9 9<&- } case "$1" in start) process_options log_action_begin_msg "Configuring network interfaces" if ifup -a; then log_action_end_msg $? else log_action_end_msg $? fi ;; stop) check_network_file_systems check_network_swap log_action_begin_msg "Deconfiguring network interfaces" if ifdown -a --exclude=lo; then log_action_end_msg $? else log_action_end_msg $? fi ;; force-reload|restart) process_options log_warning_msg "Running $0 $1 is deprecated because it may not enable again some interfaces" log_action_begin_msg "Reconfiguring network interfaces" ifdown -a --exclude=lo || true if ifup -a --exclude=lo; then log_action_end_msg $? else log_action_end_msg $? fi ;; *) echo "Usage: /etc/init.d/networking {start|stop}" exit 1 ;; esac exit 0

galite rasti keletą funkcijų, kurios tikrina prijungtas tinklo failų sistemas ( check_network_file_systems(), check_network_swap()), taip pat patikrinti, ar egzistuoja kažkokia dar nesuprantama konfigūracija /etc/network/options ( funkcija proceso_parinktys()), o pačiame apačioje pagal dizainą korpusas "$1" in ir pagal įvestą parametrą (start/stop/force-reload|restart ar bet koks kitas) atlieka tam tikrus veiksmus. Iš šių labai tam tikrus veiksmus“, pradžios argumento pavyzdys rodo, kad funkcija paleidžiama pirmiausia proceso_parinktys, tada frazė siunčiama į žurnalą Tinklo sąsajų konfigūravimas ir paleiskite komandą ifup -a. Jei pažvelgsite į man ifup , pamatysite, kad ši komanda nuskaito konfigūraciją iš failo /etc/network/interfaces ir pagal raktą -a paleidžia visas sąsajas, turinčias parametrą automatinis.

Komandos ifup ir ifdown gali būti naudojamos tinklo sąsajoms sukonfigūruoti (arba atitinkamai dekonfigūruoti), remiantis sąsajos apibrėžimais faile /etc/network/interfaces.

-a, -visi
Jei suteikta ifup, paveiks visas sąsajas, pažymėtas auto. Sąsajos pateikiamos tokia tvarka, kokia jos yra apibrėžtos /etc/network/interfaces. Jei nurodyta ifdown, paveiks visas apibrėžtas sąsajas. Sąsajos sumažinamos ta tvarka, kokia jos šiuo metu yra išvardytos būsenos faile. Bus sumažintos tik sąsajos, apibrėžtos /etc/network/interfaces.

ip-server:~# cat /etc/network/interfaces # Šiame faile aprašomos jūsų sistemoje prieinamos tinklo sąsajos # ir kaip jas suaktyvinti. Norėdami gauti daugiau informacijos, žr. sąsajas (5). # The loopback tinklo sąsaja auto lo iface lo inet loopback # Pirminė tinklo sąsaja allow-hotplug eth0 iface eth0 inet dhcp allow-hotplug eth2 iface eth2 inet statinis adresas 192.168.1.1 tinklo kaukė 255.255.255.1 .9 broadcast .9 .216way. 1.255

Šioje konfigūracijos eilutėje leisti-hotplug Ir automatinis yra sinonimai, o sąsajos bus pateiktos pagal komandą ifup -a. Tiesą sakant, tai yra visa tinklo posistemio veikimo grandinė. Panašiai ir kituose platinimuose: RedHat ir SUSE tinklas paleidžiamas pagal scenarijų /etc/init.d/network. Išnagrinėję jį, taip pat galite sužinoti, kur yra tinklo konfigūracija.

/etc/hosts

Šiame faile yra sąrašas IP adresai Ir juos atitinkantys pagrindinio kompiuterio vardai (adresai).Failo formatas nesiskiria nuo pagrindinio failo:

IP serveris:~# cat /etc/hosts # ip host.in.domain host 127.0.0.1 localhost 127.0.1.1 ip-server.domain.local ip-server 192.168.1.1 ip-server.domain.local ip-server

Istoriškai šis failas buvo naudojamas vietoj DNS paslaugos. Šiuo metu failas gali būti naudojamas ir vietoj DNS paslaugos, tačiau tik su sąlyga, kad jūsų tinkle esančių mašinų skaičius matuojamas vienetais, o ne dešimtimis ar šimtais, nes tokiu atveju turėsite valdyti šio failo teisingumą kiekviename įrenginyje.

/etc/hostname

Šiame faile yra NetBIOS pagrindinio kompiuterio pavadinimas:

IP serveris: ~# cat /etc/hostname ip-server

Šiame faile saugomi vietinių ir kitų tinklų pavadinimai ir adresai. Pavyzdys:

IP serveris: ~# cat /etc/networks default 0.0.0.0 loopback 127.0.0.0 link-local 169.254.0.0 home-network 192.168.1.0

Naudojant šį failą, tinklus galima valdyti pagal pavadinimą. Pavyzdžiui, nepridėkite maršruto maršruto pridėjimas 192.168.1.12 , A maršruto pridėjimas.

/etc/nsswitch.conf

Failas apibrėžia pagrindinio kompiuterio vardo paieškos tvarka/networks, už šį nustatymą atsakingos šios eilutės:

Kompiuteriams: hostai: failai dns Tinklams: tinklai: failai

Parametras failus nurodo naudoti nurodytus failus (/etc/hosts Ir /etc/networks atitinkamai), parametras dns nurodo naudotis paslauga dns.

/etc/host.conf

Failas nurodo sprendiklio pavadinimo skyros parinktis

IP serveris: ~# cat /etc/host.conf multi on

Šis failas nurodo resolv bibliotekai grąžinti visus galiojančius pagrindinio kompiuterio adresus, rastus /etc/hosts faile, o ne tik pirmąjį.

/etc/resolv.conf

Šis failas apibrėžia tinklo pavadinimo į IP adresą vertimo mechanizmo parametrus. Paprasta kalba apibrėžia DNS nustatymus. Pavyzdys:

IP serveris: ~# cat /etc/resolv.conf vardų serveris 10.0.0.4 vardų serveris 10.0.0.1 paieška domain.local

Pirmos 2 eilutės nurodyti DNS serverius. Trečioje eilutėje nurodomi paieškos domenai. Jei sprendžiant pavadinimą pavadinimas nėra FQDN vardas, tada šis domenas pakeičiamas kaip „pabaiga“. Pavyzdžiui, vykdant ping host komandą, pinguotas adresas konvertuojamas į host.domain.local. Kitus parametrus galima perskaityti man resolv.conf. Labai dažnai Linux naudoja dinaminę šio failo generaciją, naudodama vadinamąją. programas /sbin/resolvconf.Ši programa yra tarpininkas tarp paslaugų, kurios dinamiškai teikia vardų serverius (pvz., DHCP klientas) ir paslaugas naudojant vardų serverio duomenis. Norėdami naudoti dinamiškai sugeneruotą failą /etc/resolv.conf, turite padaryti šį failą simboline nuoroda į /etc/resolvconf/run/resolv.conf. Kai kuriuose platinimuose kelias gali būti kitoks, tai tikrai bus įrašyta vyras resolvconf.

Tinklo konfigūracija

Susipažinę su pagrindiniais konfigūracijos failais, galite peržiūrėti . Komanda jau buvo paminėta aukščiau. jei up, jei žemyn, tačiau šios priemonės nėra gana universalios, pavyzdžiui, RH paskirstymuose šios komandos pagal numatytuosius nustatymus nepasiekiamos. Be to, nauji platinimai turi naują aukšto lygio tinklo valdymo įrankį - , kuris priklauso iproute paketui. Jam (iproute paketui) skirsiu . Ir dabartiniame įraše aš to nesvarstysiu. Toliau aprašytos komandos priklauso .

Taigi, norėdami būti tikri, kad komanda veiks bet kuriame „Linux“ paskirstyme, turite naudoti dvi pagrindines senamadiškas komandas. Tai yra , ir arp. Pirmoji komanda (atsakinga už tinklo sąsajų nustatymas(ip, kaukė, vartai), antras () - maršruto parinkimas, trečias (arp) – arp lentelių valdymas. Norėčiau pastebėti, kad šių komandų vykdymas neišjungus standartinio tinklo posistemio SystemV paleisties scenarijaus atliks pakeitimus tik iki pirmojo tinklo paslaugos perkrovimo / paleidimo iš naujo, nes. jei galvoji apie tai savo smegenimis, gali suprasti, kad scenarijus /etc/init.d/networking kitą kartą paleidus, jis perskaitys aukščiau pateiktas konfigūracijas ir pritaikys senus nustatymus. Atitinkamai, išeitis visam laikui nustatyti parametrus yra komanda ifconfig su atitinkamais parametrais - įveskite arba rankiniu būdu pataisykite atitinkamas tinklo sąsajos konfigūracijas.

Panašiai, jei komanda ifconfig su trūkstamomis parinktimis(pavyzdžiui, tik IP adresas), tada likusieji užpildomi automatiškai (pavyzdžiui, transliacijos adresas pagal numatytuosius nustatymus pridedamas su pagrindinio kompiuterio adresu, kuris baigiasi 255, o numatytoji potinklio kaukė yra 255.255.255.0).

Maršrutas galimoms sąsajoms šiuolaikiniuose branduoliuose visada automatiškai iškeliamas branduolio. Tiksliau, tiesioginius maršrutus į tinklą pagal IP nustatymus ir potinklį, į kurį atrodo iškilusi sąsaja, automatiškai formuoja branduolys. Tokių įrašų lauko šliuzas (šliuzas) rodo išvesties sąsajos adresą arba *. Senesnėse branduolio versijose (branduolio, nuo kurio maršrutai pradėjo kilti automatiškai, numeris - aš jums nesakysiu), maršrutą reikėjo pridėti rankiniu būdu.

Jei reikia organizuoti maršrutai, tuomet reikia naudoti . Galite pridėti ir pašalinti maršrutus naudodami šią komandą, bet vėlgi, tai padės tik tol, kol iš naujo paleisite /etc/init.d/networking (arba kitą tinklo scenarijų jūsų paskirstyme). Norint, kad maršrutai būtų įtraukti automatiškai, būtina, kaip ir naudojant komandą ifconfig, pridėti komandas maršrutams pridėti prie rc.local arba ranka pataisyti atitinkamas tinklo sąsajos konfigūracijas (pvz., Deb - /etc/network/options).

Pagal kokias taisykles formuojami maršrutai į tinklus, Aš už

Linux tinklo diagnostika

„Linux“ sistemoje yra daug tinklo diagnostikos įrankių, dažnai labai panašių į „Microsoft“. Apsvarstysiu 3 pagrindines tinklo diagnostikos priemones, be kurių bus sunku nustatyti problemas.

Manau, kad šis įrankis yra žinomas beveik visiems. Šios paslaugos užduotis yra siuntimas vadinamasis ICMP paketai nuotolinio serverio, kuris bus nurodytas komandos parametruose, serveris grąžina išsiųstas komandas ir pinglaiko skaičiavimas reikalingas, kad išsiųstas paketas pasiektų serverį ir sugrįžtų. Pavyzdžiui:

# ping ya.ru PING ya.ru (87.250.251.3) 56 (84) baitai duomenų. 64 baitai iš www.yandex.ru (87.250.251.3): icmp_seq=1 ttl=57 laikas=42.7 ms iš www.yandex.ru (87.250.251.3): icmp_seq=3 ttl=57 laikas=42.5 ms iš www.64 ms .yandex.ru (87.250.251.3): icmp_seq=4 ttl=57 laikas=42.5 ms 64 baitai iš www .yandex.ru (87.250.251.3): icmp_seq=5 ttl=57 laikas=41.9 ms ^C .ru ping statistika --- 5 paketai perduoti, 5 priimti, 0% paketų praradimas, laikas 4012ms rtt min/ avg/max/mdev = 41.922/42.588/43.255/0.500ms

Kaip matyti iš aukščiau pateikto pavyzdžio, ping suteikia mums daug naudingos informacijos. Pirmiausia, mes tai sužinojome galime užmegzti ryšį su priegloba ya.ru(kartais jie sako, kad "ya.ru priegloba yra mums prieinama"). Antra, mes tai matome DNS veikia tinkamai, nes „pinguotas“ pavadinimas buvo teisingai konvertuotas į IP adresą (PING ya.ru (87.250.251.3)). Toliau, lauke icmp_seq = nustatyti išsiųstų paketų numeraciją. Kiekvienam išsiųstam paketui iš eilės priskiriamas numeris, o jei šioje numeracijoje yra „spragų“, tai mums parodys, kad ryšys su „pinguojamu“ yra nestabilus, be to, tai gali reikšti, kad serveris, į kurį siunčiami paketai. yra perkrautas. Pagal vertę laikas = mes matome, kiek laiko keliavo paketas iki 87.250.251.3 ir atgal. Galite sustabdyti ping paslaugų programą paspausdami Ctrl + C.

Taip pat ping programaįdomus tuo, kad gali tiksliai pamatyti, kur kilo problemos. Tarkim ping programa rodo pranešimą tinklas nepasiekiamas ar kitą panašų pranešimą. Tai greičiausiai rodo neteisingą jūsų sistemos konfigūraciją. Tokiu atveju galite siųsti paketus IPT IP adresu, kad išsiaiškintumėte, kur iškyla problema (tarp vietinio kompiuterio ar "už"). Jei esate prisijungę prie interneto per maršrutizatorių, galite siųsti paketus į jo IP. Atitinkamai, jei problema atsiranda jau šiame etape, tai rodo neteisingą vietinės sistemos konfigūraciją arba kabelio pažeidimą, jei maršrutizatorius reaguoja, o teikėjo serveris ne, tada problema yra teikėjo ryšio kanale ir pan. Galiausiai, jei pavadinimo konvertavimas į IP nepavyksta, galite patikrinti ryšį per IP, jei atsakymai teisingi, galite atspėti, kad problema yra DNS.

Reikėtų pažymėti, kad ši priemonė ne visada yra patikima diagnostikos priemonė. Nuotolinis serveris gali blokuoti atsakymus į ICMP užklausas.

traceroute

Paprastais žodžiais tariant, komanda vadinama maršruto pėdsakas. Kaip galite suprasti iš pavadinimo, ši programa parodys, kokiu maršrutu paketai nukeliavo į pagrindinį kompiuterį. traceroute naudingumasšiek tiek panašus į ping, bet rodoma įdomesnė informacija. Pavyzdys:

# traceroute ya.ru traceroute to ya.ru (213.180.204.3), maks. 30 apynių, 60 baitų paketai .kubtelecom.ru (213.132.64.65) 2,761 ms 5,787 ms 5,787 ms 5,787 ms 5.787 ms. ) 5.713 ms 5,701 ms 5,636 ms 4 (194.186.6.177) 81,430 ms 81,581 ms 81,687 ms 5 kat. 213.33.201.230 (213.33.201.230) 43.322 ms 41.783 ms 41 106 ms 7 carmine-red-vlan602.yandex.net (87.250. 242.206) 41.199 ms 42.578 ms 42.610 ms 8 www.yandex.ru (213.180.204.3) 56.27.218 ms

Kaip matote, galite atsekti maršrutą nuo teikėjo maršruto parinktuvo 243-083-free.kubtelecom.ru (213.132.83.243) (Rusijos pietuose) iki galutinio prieglobos adresu www.yandex.ru (213.180.204.3) Maskvoje.

kasti

Ši programa siunčia užklausas į DNS serverius ir pateikia informaciją apie nurodytą domeną. Pavyzdys:

# dig @ns.kuban.ru roboti.ru ;<<>> DiG 9.3.6-P1<<>> @ns.kuban.ru roboti.ru ; (rastas 1 serveris); pasaulinės parinktys: print cmd ;; gavau atsakymą: ;; ->>ANTRAŠTĖ<<- opcode: QUERY, status: NOERROR, id: 64412 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0 ;; QUESTION SECTION: ;roboti.ru. IN A ;; ANSWER SECTION: roboti.ru. 448 IN A 72.52.4.90 ;; AUTHORITY SECTION: roboti.ru. 345448 IN NS ns1.sedoparking.com. roboti.ru. 345448 IN NS ns2.sedoparking.com. ;; Query time: 102 msec ;; SERVER: 62.183.1.244#53(62.183.1.244) ;; WHEN: Thu Feb 17 19:44:59 2011 ;; MSG SIZE rcvd: 94

kasimo komanda išsiuntė prašymą DNS serveris - ns.kuban.ru (@ns.kuban.ru- šis parametras yra neprivalomas, tokiu atveju informacijos apie DNS šaltinis bus paimtas iš serverio iš jūsų sistemos nustatymų) apie domeno pavadinimą roboti.ru. Dėl to gavau atsakymą, kuriame matome skyriuje ATSAKYMŲ SKYRIUS informaciją apie domeno IP adresus, skiltyje VALDYMO SKYRIUS informacija apie vadinamąją. autoritetingus DNS serverius. Trečioje eilutėje iš apačios nurodoma, kuris serveris pateikė atsakymą.

Kitos diagnostikos priemonės

ping, dig ir kitas diagnostikos priemones su parametrais rasite įraše.

Naujos tinklo plokštės prijungimas

Naujos tinklo plokštės prijungimas ir paleidimas susideda iš kelių žingsnių:

1. Fizinis kortelės prijungimas

3. Peržiūrėkite sistemos išvestį, kad aptiktų naują tinklo plokštę:

Pažiūrėkime išvestį PRIEŠ prijungiant naują kortelę:

Serveris:~# dmesg | grep eth [ 4.720550] e1000: eth0: e1000_probe: Intel(R) PRO/1000 tinklo jungtis [ 5.130191] e1000: eth1: e1000_probe: Intel(R) PRO/1000 tinklo jungtis] ​​8 102:07 0_watchdog: NIC nuoroda yra Iki 1000 Mbps pilnas dvipusis, srauto valdymas: RX [ 15.681056] e1000: eth0: e1000_watchdog: NIC ryšys yra iki 1000 Mbps pilnas dvipusis, srauto valdymas: RX

išvestis rodo, kad sistemoje yra 2 tinklo plokštės eth1 ir eth2. Sujungiame trečiąjį ir žiūrime į išvestį:

Serveris:~# dmesg | grep eth [ 4.720513] e1000: eth0: e1000_probe: „Intel(R) PRO/1000 Network Connection [ 5.132029] e1000: eth1: e1000_probe: Intel(R) PRO/1000“ tinklo jungtis [ 620:04:5] _zondas: Intel(R ) PRO/1000 tinklo ryšys [ 39.274875] udev: tinklo sąsaja pervardyta į eth2 į eth3 [ 39.287661] udev: tinklo sąsaja pervardyta eth1_rename_ren į eth2 [ 45.670744] e1000: eth270744] e1000: eth2: NICwae Full Link isbogpsd0: NICwae plex, srauto valdymas: RX [ 46.237232] e1000: eth0: e1000_watchdog: NIC jungtis yra iki 1000 Mbps Full Duplex, srauto valdymas: RX [ 96.977468] e1000: eth3: e1000_watchdog: NIC Duplex Control10 Rblow : Full Duplex

IN dmesg matome, kad atsirado nauja tinklo plokštė - eth3, kuri iš tikrųjų yra eth2, bet udev įrenginių tvarkytuvė jį pervadino į eth3, o eth2 iš tikrųjų yra pervadintas eth1 (apie udev kalbėsime atskirame įraše). Mūsų naujojo tinklo atsiradimas dmesg mums sako, kad tinklo plokštė palaikoma esminis ir teisingas nusprendė. Liko tik nustatyti naują sąsają /etc/network/interfaces(Debian), nes pateiktas žemėlapis nebuvo inicijuotas pradžios scenarijaus /etc/init.d/network. ifconfig mato šią kortelę:

Serveris:~# ifconfig eth3 eth3 Nuorodos encap:Ethernet HWaddr 08:00:27:5f:34:ad inet6 addr: fe80::a00:27ff:fe5f:34ad/64 Taikymo sritis:Nuoroda UP TRANSLIAVIMAS VYKDANT MULTICAST MTUtric:1 1 RX paketai: 311847 klaidos: 0 atmestas: 0 viršijimas: 0 kadras: 0 TX paketai: 126 klaidos: 0 atmestas: 0 viršijimas: 0 nešiklis: 0 susidūrimai: 0 txqueuelen: 1000 RX baitai: 104670651 (99,8 MiB) TX bytes: 16184 (15,8 KiB)

bet be to - nekonfigūruoja. Kaip sukonfigūruoti tinklo plokštę, buvo aptarta aukščiau.

Santrauka

Manau, tai viskas šiai dienai. Kai pradėjau rašyti šį straipsnį, galvojau, kad tilpsiu į vieną įrašą, bet jis pasirodė didžiulis. Todėl buvo nuspręsta straipsnį padalinti į dvi dalis. Iš viso bandžiau išdėstyti ne žingsnis po žingsnio, kaip sukurti tinklą, o išdėstyti principą ir paaiškinti, kaip tinklas prasideda ir veikia Linux sistemoje. Labai tikiuosi, kad man pavyko. Džiaugsiuosi jūsų komentarais ir papildymais. Laikui bėgant straipsnį papildysiu.

Jei reikia sukonfigūruoti tinklo plokštę, pasirinkite IP adresą, visiškai kvalifikuotą domeno pavadinimą (FQDN), taip pat galimus slapyvardžius, kurie bus nurodyti /etc/hosts faile. Sintaksė yra tokia:

IP_adresas myhost.example.org slapyvardžiai

Jei nenorite, kad jūsų kompiuteris būtų matomas internete (t. y. turėti registruotą domeną ir galiojantį priskirtų IP adresų diapazoną – dauguma vartotojų to nedaro), tiesiog įsitikinkite, kad IP adresas yra privataus tinklo IP adresų diapazone. . Galiojantys diapazonai:

Privataus tinklo adresų diapazonas Įprastas priešdėlis 10.0.0.1 - 10.255.255.254 8 172.x.0.1 - 172.x.255.254 16 192.168.y.1 - 192.168.y.254 24

x gali būti bet koks skaičius nuo 16 iki 31. y gali būti bet koks skaičius nuo 0 iki 255.

Galiojantis privatus IP adresas būtų 192.168.1.1. Tinkamas šio IP FQDN būtų lfs.example.org.

Net jei tinklo plokštė nenaudojama, FQDN vis tiek gali prireikti. Tai būtina kai kuriose programose, kad jos tinkamai veiktų.

Sukurkite failą /etc/hosts taip:

katė > /etc/hosts< "EOF" # Begin /etc/hosts (network card version) 127.0.0.1 localhost <192.168.1.1> # Baigti /etc/hosts (tinklo kortelės versija) EOF

Vertybės<192.168.1.1>Ir turėtų būti pakeistas, kad atitiktų konkrečius vartotojo ar kitus reikalavimus (jei IP adresą priskyrė tinklo / sistemos administratorius ir įrenginys prijungtas prie esamo tinklo). Pasirenkamų slapyvardžių pavadinimų galima praleisti.

Jei jums nereikia konfigūruoti tinklo plokštės, sukurkite failą /etc/hosts taip:

katė > /etc/hosts< "EOF" # Begin /etc/hosts (no network card version) 127.0.0.1 localhost # Pabaiga /etc/hosts (be tinklo plokštės versijos) EOF

Ankstesnė skiltis:

Sakiau, kad parašysiu apie tai, kaip Ubuntu nustatyti virtualius hostus ir pakeisti svetainių talpinimo katalogą. Na, aš rašau.

Internete daug parašyta apie virtualius pagrindinius kompiuterius ir kaip juos nustatyti. Bet kai kur informacija pasenusi, kai kur pusiau veikianti. Dėl to procedūra, kuri trunka daugiausia penkias minutes, tęsiasi kelias valandas. Aš turėjau tokį. Todėl, kad kitą kartą man to prireiktų vėl negaištų daug laiko, rašau šį straipsnį.

Svetainių šakninio katalogo nustatymas

Pagal numatytuosius nustatymus „Apache“ ieško tinklalapių /var/www/html. Tačiau vartotojui tai gali būti nepatogu. Todėl, jei pageidaujama, šakninis katalogas gali būti pakeistas. Pavyzdžiui, savo svetainėms naudosiu aplanką public_html namų kataloge. Taip pat iš karto sukursiu aplanką bandomajai svetainei testsite.loc ir tiesiogiai aplanką, kuriame bus svetainės failai www. Tai reiškia, kad turite sukurti tokią katalogo struktūrą: /public_html/testsite.loc/www/. Tai galite padaryti naudodami failų tvarkyklę, galite per terminalą:

mkdir -p public_html/testsite.loc/www

Nedelsdami sukurkite paprastą bandomąjį puslapį index.html

Virtualių prieglobų nustatymas

Sveiki!!

Ir išsaugokite jį www aplanke.

Dabar redaguokite virtualaus pagrindinio kompiuterio failą 000-default.conf pasakyti „Apache“, kur dabar talpiname svetaines:

sudo gedit /etc/apache2/sites-available/000-default.conf

Atsidariusiame faile raskite eilutę, kuri prasideda DocumentRoot, ir pakeiskite kelią į naują: /home/user/public_html/. Kur Vartotojas- Jūsų slapyvardis.

Išsaugokite failą ir uždarykite redaktorių.

Nustatymų failo keitimas apache2.conf:

Sudo gedit /etc/apache2/apache2.conf

Prie atidaryto failo pridėkite šį bloką:

Parinktys Indeksai FollowSymLinks AllowOverride Nėra Reikalauti, kad viskas būtų suteikta

Vėlgi, nepamirškite pakeisti Vartotojasį savo vartotojo vardą. Išsaugome failą.

Sukurkite naują pagrindinio kompiuterio konfigūracijos failą. Norėdami tai padaryti, nukopijuokite standartinį failą 000-default.conf ir pervardykite jį į testsite.conf:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/testsite.conf

Dabar redaguojame:

Sudo gedit /etc/apache2/sites-available/testsite.conf

Kad būtų patogiau, galite pašalinti visas komentuojamas eilutes (kurios prasideda #)

Pridėti „ServerName testsite.loc“

Pridėti „ServerAlias ​​​​www.testsite.loc“

Nurodykite kelią į katalogą su svetainės failais DocumentRoot.

Išsaugome pakeitimus.

Ir įjunkite svetainę:

sudo a2ensite testsite.conf

Iš naujo paleiskite „Apache“:

Apache2 paslauga iš naujo įkelti

hosts failą

Norėdami nukreipti naršyklės užklausas į mūsų serverį. Redaguojame pagrindinio kompiuterio failą:

sudo gedit /etc/hosts

Pirmoje eilutėje su tarpu šalia localhost pridėkite mūsų svetainės domenus testsite.loc Ir www.testsite.loc

Išsaugoti pakeitimus

Galime patikrinti savo darbo rezultatą. Naršyklėje įvedame savo svetainės adresą - testsite.loc.

Aplanko leidimai

Apache serveris veikia kaip grupė ir vartotojas www-duomenys. Tame pačiame namų kataloge failų savininkas yra dabartinis vartotojas. Todėl norėdami išvengti problemų, turite pakeisti teises į failus ir aplankus, esančius public_html, ir į patį jį. Norėdami tai padaryti, įveskite terminalą.

DNS domeno vardų sistema naudojama nustatyti, kuris IP priklauso teisingam interneto domenui. Kai programai reikia pasiekti svetainę pagal jos domeno pavadinimą, operacinė sistema siunčia užklausą DNS serveriui, kad sužinotų, kuriam IP ji turėtų siųsti paketus toliau. Tačiau taip būna ne visada. Pavyzdžiui, kai pasiekiame localhost domeną, užklausa visada siunčiama į mūsų vietinį kompiuterį.

Viskas apie hosts failą. Jei anksčiau naudojote „Windows“, tikriausiai jau girdėjote apie šį failą. Ten dažniausiai jis buvo naudojamas greitai užblokuoti prieigą prie šaltinio. Tačiau jo taikymas yra daug platesnis. Šiame straipsnyje apžvelgsime, kaip nustatyti pagrindinio kompiuterio failą „Linux“, taip pat kokias funkcijas jis mums suteikia.

Prieš patekdami į patį hosts failą, turime suprasti, kaip Linux ieško domeno vardo IP adreso. Sakiau, kad operacinė sistema iš karto siunčia užklausą į DNS serverį, bet tai nėra visiškai tiesa. Yra tam tikra paieškos tvarka, kuria ji atliekama. Ši tvarka nustatyta konfigūracijos faile /etc/nsswitch.conf

cat /etc/nsswitch.conf

Čia mus domina šeimininkų linija. Jame prioriteto tvarka pateikiamos paslaugos, kurios naudojamos domeno vardo IP adresui ieškoti. Failai reiškia naudoti failą /etc/hosts, o dns reiškia interneto domeno vardo paslaugą. Jei failai yra prieš pagrindinius kompiuterius, tai reiškia, kad sistema pirmiausia bandys rasti domeną /etc/hosts, o tik tada DNS. Taip yra pagal nutylėjimą.

Linux priima failų sąranką

Failas, kurio mums reikia, yra /etc/ kataloge. Norėdami jį atidaryti, galite naudoti bet kurį teksto redaktorių tiek komandinėje eilutėje, tiek grafinėje sąsajoje, tereikia jį atidaryti su supervartotojo teisėmis. Pavyzdžiui, naudojant vim:

sudo vi /etc/hosts

sudo gedit /etc/hosts

Failo sintaksė yra gana paprasta. Jame yra kelios eilutės su domenų vardais ir IP adresais, kuriuos turite naudoti jiems. Kiekvienas iš jų atrodo taip:

ip_adreso domenas slapyvardis

Paprastai pirmoji eilutė sukuria taisyklę, peradresuojančią visas užklausas į localhost domeną į vietinį IP adresą - 127.0.0.1:

127.0.0.1 localhost

Pagal numatytuosius nustatymus šiame faile taip pat yra jūsų kompiuterio pavadinimo ir IPv6 adresų peradresavimų. Galite sukurti savo nustatymus bet kuriam norimam domenui. Norėdami tai padaryti, ..0.0.1 failo pabaigoje pridėkite eilutę:

127.0.0.1 svetainę

Atkreipkite dėmesį, kad čia nurodytas tik domenas, be protokolo. Jums nereikia nurodyti http ar https priešdėlio, kitaip niekas neveiks. Tačiau www subdomenui reikia sukurti atskirą įrašą arba įrašyti jį kaip slapyvardį. Pavyzdžiui:

127.0.0..svetainė

Dabar, kai prašoma domeno, svetainė atidarys mūsų vietinį IP. Norėdami grąžinti prieigą prie pradinio šaltinio, tiesiog pašalinkite pridėtą eilutę. Bet galite naudoti ne tik vietinį adresą, bet ir bet kurį kitą. Tai labai patogu, jei ką tik užregistravote domeną ir domeno zona dar neatnaujinta, bet jau norite dirbti su nauja svetaine. Tiesiog pridėkite duomenis prie /etc/hosts ir dirbkite kaip įprasta.

išvadas

Šiame trumpame straipsnyje išanalizavome, kaip DNS sukonfigūruojamas naudojant Linux hosts failą. Kaip matote, su jo pagalba galite blokuoti prieigą prie nepageidaujamų išteklių, pavyzdžiui, prie kurių programos neturėtų turėti prieigos, taip pat naudoti tai žiniatinklio valdytojo darbe.

apie autorių

Svetainės įkūrėjas ir administratorius, man patinka atvirojo kodo programinė įranga ir Linux operacinė sistema. Šiuo metu kaip pagrindinę OS naudoju Ubuntu. Be Linux, domiuosi viskuo, kas susiję su informacinėmis technologijomis ir šiuolaikiniu mokslu.

Dirbdami su kitomis OC galite jau žinoti, kur yra pagrindinio kompiuterio failas, tačiau pereidami prie Ubuntu Linux galite šiek tiek pasimesti, kur yra šis failas ir kaip jį redaguoti.

Kas yra hosts failas? Kur jis yra Ubuntu ir kaip jį redaguoti, jei jus domina, skaitykite toliau pateiktą medžiagą.

HOSTS yra tekstinis failas, kuriame yra domenų vardų duomenų bazė ir naudojamas juos išversti į pagrindinio tinklo adresus. Šio failo užklausa atlieka labai svarbų vaidmenį ir turi labai aukštą prioritetą prieš prieigą prie DNS serverių. Skirtingai nuo DNS, kuris atnaujinamas nuo 30 minučių iki 2-3 dienų, failo turinį valdo kompiuterio administratorius ir esant reikalui jį galima atnaujinti bet kada.

Dirbdami kitose OC galite jau žinoti, kur yra hosts failas, tačiau perjungę į bet kurį kitą, pavyzdžiui, Ubuntu Linux, ilgai ieškosite be raginimo, kur šis failas yra ir kaip jį redaguoti .

  • C:\WINDOWS\system32\drivers\etc – sistemoje „Windows“.
  • /etc/hosts – Ubuntu

Norėdami atidaryti pagrindinio kompiuterio failą redaguoti Ubuntu, atidarykite terminalą (CTRL + ALT + T) ir paleiskite komandą:

sudo gedit /etc/hosts

po kurio šis failas bus atidarytas standartiniame redaktoriuje, patogiame redaguoti, standartinis failo turinys:

127.0.0.1 localhost 127.0.1.1 your-pc # Šios eilutės yra pageidaujamos IPv6 palaikančiose prieglobose::1 ff02::2 ip6-allrouters

Jei norite užregistruoti jums reikalingą domeną ir IP, galite rašyti iš karto po antros eilutės pačioje failo pradžioje, surašius viską, ko reikia, paspauskite mygtuką išsaugoti Gedit redaktoriuje ir viskas, nereikia iš naujo paleisti kompiuterio.

Failas šeimininkai turi tokį formatą:

(IP - pagrindinio kompiuterio IP adresas) (Pagrindinio kompiuterio pavadinimas - pagrindinio kompiuterio pavadinimas domene). (Domenas - domeno pavadinimas) (Pseudonimas - apibrėžia papildomą pagrindinio kompiuterio pavadinimą)

Išsamesnės informacijos apie darbą su hosts failu galite gauti paleidę komandą terminale vyras šeimininkai.

Įrašymo pavyzdys:

193.109.247.234 linuxsoid.com 88.212.202.38 li.ru

viskas taip paprasta, mes darome pakeitimus, išsaugome ir ruošiame, bus klausimų, klauskite komentaruose prie medžiagos.

mob_info