Bii o ṣe le tan olupin Linux kan si Olulana kan lati ṣakoso Ijabọ ni Iṣiro ati Dynamically - Apakan 10


Gẹgẹbi a ti ni ifojusọna ninu awọn ẹkọ iṣaaju ti eyi LFCE ( Linux Foundation Certified Engineer ) jara, ninu nkan yii a yoo jiroro lori afisona ti ijabọ IP ni iṣiro ati agbara pẹlu awọn ohun elo kan pato.

Awọn ohun akọkọ ni akọkọ, jẹ ki a gba diẹ ninu awọn itumọ ni gígùn:

  1. Ninu awọn ọrọ ti o rọrun, apo-iwe ni ipilẹ ipilẹ ti a lo lati ṣe igbasilẹ alaye laarin nẹtiwọọki kan. Awọn nẹtiwọọki ti nlo TCP/IP gẹgẹbi ilana nẹtiwọọki tẹle awọn ofin kanna fun gbigbe data: alaye gangan ti pin si awọn apo-iwe ti o ṣe ti data mejeeji ati adirẹsi ibiti o yẹ ki o firanṣẹ si.
  2. Itọpa jẹ ilana ti\" itọsọna " data lati orisun si ibi-ajo inu nẹtiwọọki kan.
  3. Itọsọna aimi nilo eto ti a tunto pẹlu ọwọ pẹlu awọn ofin ti a ṣalaye ninu tabili afisona kan. Awọn ofin wọnyi wa titi ati pe wọn lo lati ṣalaye ọna ti apo-iwe kan gbọdọ kọja nipasẹ bi o ti nrìn lati ẹrọ kan si ekeji.
  4. Afisona Yiyi to , tabi afisona ọlọgbọn (ti o ba fẹ), tumọ si pe eto naa le yipada laifọwọyi, bi o ti nilo, ipa-ọna ti apo-iwe kan tẹle.

Ilọsiwaju IP ati Iṣeto Ẹrọ Ẹrọ Nẹtiwọọki

Apakan iproute n pese ipilẹ awọn irinṣẹ lati ṣakoso nẹtiwọọki ati iṣakoso ijabọ ti a yoo lo jakejado nkan yii nitori wọn ṣe aṣoju rirọpo awọn irinṣẹ iní bii ifconfig ati ipa .

IwUlO aringbungbun ninu iproute suite ni a pe ni irọrun ip. Iṣeduro ipilẹ rẹ jẹ atẹle:

# ip object command

Nibiti nkan le jẹ ọkan ninu atẹle naa (awọn ohun ti o ṣe igbagbogbo ni a fihan - o le tọka si eniyan ip fun atokọ pipe):

  1. ọna asopọ : ẹrọ nẹtiwọọki.
  2. addr : Ilana (IP tabi IPv6) adirẹsi lori ẹrọ kan.
  3. ipa : titẹsi tabili afisona.
  4. ofin : ṣe akoso ni ibi ipamọ data eto imulo afisona.

Lakoko ti aṣẹ ṣe aṣoju iṣe kan pato ti o le ṣe lori ohun. O le ṣiṣe aṣẹ atẹle lati ṣafihan atokọ pipe ti awọn ofin ti o le lo si ohun kan pato:

# ip object help

Fun apere,

# ip link help

Aworan ti o wa loke fihan, fun apẹẹrẹ, pe o le yipada ipo ti wiwo nẹtiwọọki pẹlu aṣẹ atẹle:

# ip link set interface {up | down}

Fun iru awọn apẹẹrẹ diẹ sii ti ‘ ip ‘ pipaṣẹ, ka Awọn iwulo ‘ip’ iwulo 10 lati Tunto Adirẹsi IP

Ninu apẹẹrẹ yii, a yoo mu ṣiṣẹ ati mu ṣiṣẹ eth1 :

# ip link show
# ip link set eth1 down
# ip link show

Ti o ba fẹ lati tun mu eth1 ṣiṣẹ,

# ip link set eth1 up

Dipo fifihan gbogbo awọn atọkun nẹtiwọọki, a le sọ pato ọkan ninu wọn:

# ip link show eth1

Eyi ti yoo da gbogbo alaye pada fun eth1.

O le wo tabili afisona akọkọ rẹ lọwọlọwọ pẹlu boya ọkan ninu awọn ofin 3 wọnyi:

# ip route show
# route -n
# netstat -rn

Ọwọn akọkọ ninu iṣẹjade awọn ofin mẹta tọka nẹtiwọọki afojusun. Iṣafihan ti ip ipa ọna fihan (atẹle ọrọ-ọrọ dev ) tun ṣafihan awọn ẹrọ nẹtiwọọki ti n ṣiṣẹ bi ẹnu-ọna ti ara si awọn nẹtiwọọki wọnyẹn.

Botilẹjẹpe ni ode oni ip pipaṣẹ n ṣe ayanfẹ lori ipa ọna, o tun le tọka si eniyan ip-ipa ati ọna eniyan fun alaye alaye ti iyoku ti awọn ọwọn.

A fẹ lati tọ ipa icmp (ping) awọn apo-iwe lati dev2 si dev4 ati ọna miiran pẹlu (akiyesi pe awọn ẹrọ alabara mejeeji wa lori awọn nẹtiwọọki oriṣiriṣi). Orukọ ti NIC kọọkan, pẹlu adirẹsi IPv4 ti o baamu, ni a fun ni awọn akọmọ onigun mẹrin.

Aaye idanwo wa bi atẹle:

Client 1: CentOS 7 [enp0s3: 192.168.0.17/24] - dev1
Router: Debian Wheezy 7.7 [eth0: 192.168.0.15/24, eth1: 10.0.0.15/24] - dev2
Client 2: openSUSE 13.2 [enp0s3: 10.0.0.18/24] - dev4

Jẹ ki a wo tabili afisona ni dev1 (apoti CentOS):

# ip route show

ati lẹhinna yi pada lati le lo enp0s3 NIC ati asopọ si 192.168.0.15 lati wọle si awọn ogun ni nẹtiwọọki 10.0.0.0/24:

# ip route add 10.0.0.0/24 via 192.168.0.15 dev enp0s3

Ewo ti o ṣe pataki ka,\"Ṣafikun ipa-ọna si nẹtiwọọki 10.0.0.0/24 nipasẹ wiwo nẹtiwọọki enp0s3 nipa lilo 192.168.0.15 bi ẹnu-ọna".

Bakan naa ni dev4 (apoti openSUSE) si awọn ọmọ ogun pingi ni nẹtiwọọki 192.168.0.0/24:

# ip route add 192.168.0.0/24 via 10.0.0.15 dev enp0s3

Lakotan, a nilo lati mu ifiranšẹ siwaju ninu olulana Debian wa:

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

Bayi jẹ ki a ping:

ati,

Lati ṣe awọn eto wọnyi ni iduroṣinṣin kọja awọn bata bata, satunkọ /etc/sysctl.conf lori olulana naa ki o rii daju pe oniyipada net.ipv4.ip_forward ti ṣeto si otitọ bi atẹle:

net.ipv4.ip_forward = 1

Ni afikun, tunto awọn NIC lori awọn alabara mejeeji (wa faili iṣeto laarin /etc/sysconfig/nẹtiwọọki lori openSUSE ati /etc/sysconfig/awọn iwe afọwọkọ nẹtiwọọki lori CentOS - ni awọn ọran mejeeji a pe ni ifcfg-enp0s3 ).

Eyi ni faili iṣeto lati apoti openSUSE:

BOOTPROTO=static
BROADCAST=10.0.0.255
IPADDR=10.0.0.18
NETMASK=255.255.255.0
GATEWAY=10.0.0.15
NAME=enp0s3
NETWORK=10.0.0.0
ONBOOT=yes

Ohn miiran nibiti a le lo ẹrọ Linux bi olulana ni nigbati o nilo lati pin asopọ Intanẹẹti rẹ pẹlu LAN aladani.

Router: Debian Wheezy 7.7 [eth0: Public IP, eth1: 10.0.0.15/24] - dev2
Client: openSUSE 13.2 [enp0s3: 10.0.0.18/24] - dev4

Ni afikun lati ṣeto ifiranšẹ soso ati tabili afisona aimi ninu alabara bi ninu apẹẹrẹ ti tẹlẹ, a nilo lati ṣafikun awọn ofin iptables diẹ ninu olulana naa:

# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
# iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

Aṣẹ akọkọ ṣe afikun ofin si pq POSTROUTING ninu tabili nat (Itumọ Adirẹsi Nẹtiwọọki), n tọka pe o yẹ ki o lo eth0 NIC fun awọn idii ti njade.

MASQUERADE tọka si pe NIC yii ni IP ti o ni agbara ati pe ṣaaju fifiranṣẹ package si\" aye igbẹ egan " ti Intanẹẹti, adirẹsi orisun ikọkọ ti apo-iwe ni lati yipada si ti IP ilu ti olulana naa.

Ninu LAN pẹlu ọpọlọpọ awọn ọmọ-ogun, olulana ntọju abala awọn isopọ ti a fi idi mulẹ ni /proc/net/ip_conntrack nitorinaa o mọ ibiti o ti le pada esi lati Intanẹẹti si.

Apakan nikan ti iṣelọpọ ti:

# cat /proc/net/ip_conntrack

jẹ ifihan ninu sikirinifoto atẹle.

Nibiti a ti saami orisun (ikọkọ IP ti apoti openSUSE) ati opin irin ajo (Google DNS) ti awọn apo-iwe. Eyi ni abajade ti ṣiṣiṣẹ:

# curl linux-console.net

lori apoti openSUSE.

Bi Mo ni idaniloju pe o le gboju tẹlẹ, olulana nlo 8.8.8.8 ti Google bi olupilẹṣẹ orukọ, eyiti o ṣalaye idi ti opin ti awọn apo-iwe ti njade tọka si adirẹsi naa.

Akiyesi: Pe awọn idii ti nwọle lati Intanẹẹti ni a gba nikan ni ti wọn ba jẹ apakan ti asopọ ti a ti ṣeto tẹlẹ (aṣẹ # 2), lakoko ti a gba awọn idii ti njade laaye\" ijade ọfẹ ọfẹ " (aṣẹ # 3).

Maṣe gbagbe lati ṣe awọn ofin iptables rẹ jubẹẹlo ni atẹle awọn igbesẹ ti a ṣe ilana ni Apá 8 - Tunto Firewall Iptables ti jara yii.

Yiyipo Yiyi pẹlu Quagga

Ni ode oni, ọpa ti a lo julọ fun lilọ kiri agbara ni Linux jẹ quagga . O ngbanilaaye awọn alakoso eto lati ṣe, pẹlu olupin Linux ti o ni iye owo kekere, iṣẹ kanna ti a pese nipasẹ awọn olulana Cisco lagbara (ati idiyele).

Ọpa funrararẹ ko mu ipa ọna naa, ṣugbọn kuku ṣe atunṣe tabili afisona ekuro bi o ti kọ awọn ipa ọna tuntun ti o dara julọ lati mu awọn apo-iwe.

Niwọn igba ti o jẹ orita ti abila, eto kan ti idagbasoke rẹ da duro ni igba diẹ sẹhin, o ṣetọju fun awọn idi itan awọn ofin ati ilana kanna ju abila. Ti o ni idi ti iwọ yoo rii itọkasi pupọ si abila lati aaye yii lọ.

Jọwọ ṣe akiyesi pe ko ṣee ṣe lati bo ipa ọna ipa ati gbogbo awọn ilana ti o jọmọ ninu nkan kan, ṣugbọn Mo ni igboya pe akoonu ti a gbekalẹ nibi yoo ṣiṣẹ bi ibẹrẹ fun ọ lati kọ lori.

Lati fi quagga sori ẹrọ pinpin ti o yan:

# aptitude update && aptitude install quagga 				[On Ubuntu]
# yum update && yum install quagga 					[CentOS/RHEL]
# zypper refresh && zypper install quagga 				[openSUSE]

A yoo lo agbegbe kanna bii pẹlu Apẹẹrẹ # 3, pẹlu iyatọ kan ti eth0 ni asopọ si olulana ẹnu-ọna akọkọ pẹlu IP 192.168.0.1.

Itele, satunkọ /etc/quagga/daemons pẹlu,

zebra=1
ripd=1

Bayi ṣẹda awọn faili iṣeto ni atẹle.

# /etc/quagga/zebra.conf
# /etc/quagga/ripd.conf

ki o ṣafikun awọn ila wọnyi (rọpo fun orukọ olupin ati ọrọ igbaniwọle ti o fẹ):

service quagga restart
hostname    	dev2
password    	quagga
# service quagga restart

Akiyesi: Iyẹn ripd.conf ni faili iṣeto fun Ilana Alaye Itọsọna afisona, eyiti o pese olulana pẹlu alaye ti awọn nẹtiwọki le ti de ati bi o ṣe pẹ to (ni awọn iwuwo iye hops) wọn jẹ.

Akiyesi pe eyi nikan ni awọn ilana ti o le ṣee lo pẹlu quagga, ati pe Mo yan fun itọnisọna yii nitori irọrun ti lilo ati nitori ọpọlọpọ awọn ẹrọ nẹtiwọọki ṣe atilẹyin fun, botilẹjẹpe o ni ailagbara ti gbigbe awọn iwe-ẹri kọja ni ọrọ pẹtẹlẹ. Fun idi eyi, o nilo lati fi awọn igbanilaaye to dara si faili iṣeto:

# chown quagga:quaggavty /etc/quagga/*.conf
# chmod 640 /etc/quagga/*.conf 

Ninu apẹẹrẹ yii a yoo lo iṣeto atẹle pẹlu awọn onimọ-ọna meji (rii daju lati ṣẹda awọn faili iṣeto fun olulana # 2 bi a ti ṣalaye tẹlẹ):

Pataki: Maṣe gbagbe lati tun ṣeto atẹle naa fun awọn onimọ-ọna mejeeji.

Sopọ si abila (tẹtisi lori ibudo 2601 ), eyiti o jẹ agbedemeji ọgbọn ori laarin olulana ati ekuro:

# telnet localhost 2601

Tẹ ọrọ igbaniwọle ti o ṣeto sinu faili /etc/quagga/zebra.conf sii, lẹhinna muu iṣeto ni:

enable
configure terminal

Tẹ adiresi IP ati iboju-boju ti NIC kọọkan:

inter eth0
ip addr 192.168.0.15
inter eth1
ip addr 10.0.0.15
exit
exit
write

Bayi a nilo lati sopọ si ebute RIP daemon (ibudo 2602):

# telnet localhost 2602

Tẹ orukọ olumulo ati ọrọ igbaniwọle sii bi a ti tunto rẹ ni faili /etc/quagga/ripd.conf , lẹhinna tẹ awọn ofin wọnyi ni igboya (awọn alaye ni a ṣafikun fun ṣiṣe alaye):

enable turns on privileged mode command.
configure terminal changes to configuration mode. This command is the first step to configuration
router rip enables RIP.
network 10.0.0.0/24 sets the RIP enable interface for the 10.0.0.0/24 network. 
exit
exit
write writes current configuration to configuration file.

Akiyesi: Pe ninu awọn ọran mejeeji iṣeto naa ti ni afikun si awọn ila ti a fikun tẹlẹ ( /etc/quagga/zebra.conf ati /etc/quagga/ripd.conf ) .

Lakotan, sopọ mọ lẹẹkan si iṣẹ abila lori awọn onimọ-ọna mejeeji ati ṣe akiyesi bi ọkọọkan wọn ṣe ni\" kẹkọọ " ipa ọna si nẹtiwọọki ti o wa lẹhin ekeji, ati eyiti o jẹ hop ti o tẹle lati de si nẹtiwọọki yẹn, nipa ṣiṣe pipaṣẹ fihan ipa-ọna ip :

# show ip route

Ti o ba fẹ gbiyanju awọn ilana tabi awọn iṣeto oriṣiriṣi, o le fẹ tọka si aaye iṣẹ akanṣe Quagga fun awọn iwe siwaju sii.

Ipari

Ninu nkan yii a ti ṣalaye bii o ṣe le ṣeto iduro ati ipa ọna ipa, nipa lilo olulana apoti Linux (s) kan. Ni ominira lati ṣafikun ọpọlọpọ awọn onimọ-ọna bi o ṣe fẹ, ati lati ṣe idanwo bi o ṣe fẹ. Maṣe ṣiyemeji lati pada si ọdọ wa ni lilo fọọmu ikansi ni isalẹ ti o ba ni awọn asọye tabi awọn ibeere eyikeyi.