Labojums: Neveiksmīgs maršruta resursdators Ubuntu ar vairākiem tīkliem neizdevās



Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai

Ja jums ir sarežģīta tīkla iestatīšana, ir satraucoši, ja jums ir Nav maršruta uz resursdatoru Sāk parādīties pēc jaunas saskarnes paaugstināšanas. Tas bieži notiek tāpēc, ka noklusējuma maršruts tiek mainīts vai nomests.



Lai pārbaudītu noklusējuma maršrutu, ievadiet



ip maršruta šovs



nav maršruta uz 1. resursdatoru

Kā parādīts iepriekš, man ir trīs fiziskās saskarnes, viena - vērsta uz āru un divas - iekšējiem tīkliem. Noklusējuma maršruts nokritās tīklā, kad tika atiestatīts savienojums, kā rezultātā pārējais mans tīkls darbojās normāli, un tikai šī mašīna nezināja, kur piekļūt internetam.

Lai mašīna varētu piekļūt internetam, tai ir nepieciešams noklusējuma maršruts, kuru var pievienot ar šādu komandu



sudo ip maršruts pievieno noklusējumu, izmantojot 136.63.176.1

Ja jums šī problēma rodas vairāk nekā vienu vai divas reizes, tā var kļūt par traucēkli, tāpēc man ir uzrakstīti pāris čaulas skripti, lai ātri novērstu situāciju.

Pirmais skripts iegūs jūsu pašreizējo ip jums. Man ir $ INTF iestatīts kā STDIN. Ja nevēlaties ievadīt saskarnes nosaukumu, jūs to maināt uz konkrēto saskarni.

Izmantojot jūsu iecienīto teksta redaktoru, man patīk vim, un manā mājas direktorijā ir avota mape

mkdir ~ / src && cd ~ / src

Es atnācu getip.sh

#! / bin / bash

#fetch ip adrese iestatīta konkrētai ierīcei

INTF = $ {1}

PTH = (~ / src /)

paziņot TMP_IP2

TMP_IP2 = $ (ip a | grep $ {INTF} | grep inet | cut -d '” -f6 | cut -d “/” -f1> $ {PTH} pašreizējais _ $ {INTF} .ip)

ip a | grep $ {INTF} | grep inet | griezt -d ”” -f6 | sagriezts -d “/” -f1 | sagriezts -d ”.” -f1-3 | awk ‘{print $ 0 ″ .0 / 24 ″}’> $ {PTH} neto _ $ {INTF} .ip

ip a | grep $ {INTF} | grep inet | griezt -d ”” -f6 | sagriezts -d “/” -f1 | sagriezts -d ”.” -f1-3 | awk ‘{print $ 0 ″ .1 ″}’> $ {PTH} gw _ $ {INTF} .ip

paziņot TMP_IP

TMP_IP = $ (kaķis $ {PTH} pašreizējais _ $ {INTF} .ip)

atbalss “pašreizējais wan ip $ TMP_IP”

Saglabājiet un izejiet no tā, padariet to izpildāmu un pēc tam pārbaudiet to.

sudo chmod a + x getip.sh

bash getip.sh eth0.2

nav maršruta uz host-2

Pieņemot, ka tas ir darbojies pareizi, dodieties uz priekšu un kopējiet to mapē / usr / local / bin /, lai padarītu to globāli izpildāmu.

sudo cp getip.sh / usr / local / bin / getip

Tagad es vienkārši varu ierakstīt getip eth0.2, un ip tiks atgriezts.

Otrais skripts piešķirs noklusējuma maršrutu, kā arī palaidīs pirmo skriptu.

Es nācu no setip.sh

#! / bin / bash

iegūt $ {1}

#fetch ip adrese iestatīta konkrētai ierīcei

PTH = (~ / src /)

paziņot RT_IP

RT_IP = $ (kaķis $ {PTH} gw _ $ {1} .ip)

ip maršruta noklusējuma maiņa, izmantojot $ RT_IP

ip maršruts pievieno noklusējumu, izmantojot $ RT_IP

atbalss “ip route - noklusējums caur $ RT_IP”

Saglabāt un atmest. Jūs, iespējams, pamanījāt, ka man ir gan mainīts, gan pievienots noklusējuma maršruts, tas ir gadījumiem, kad jums ir iestatīta nepareiza vārteja.

sudo chmod a + x setip.sh

sudo setip.sh eth0.2

nav maršruta uz 3. saimnieku

Varat vēlreiz pārbaudīt maršrutēšanas tabulu, lai vēlreiz pārbaudītu, vai viss ir labi.

sudo ip maršruta šovs

Varat nokopēt skriptus mapē / usr / local / bin /, ja vēlaties, lai tos varētu izpildīt visā pasaulē. Tam joprojām būs nepieciešams sudo, jo jūs modificējat un saskarni.

sudo cp setip.sh / usr / local / bin / setip

2 minūtes lasīts