Ƙara dokar manufa da ip rule, tana aiki har mahaɗin ya tafi; a wannan lokacin babu ita kwata-kwata. Babu abin da ya gaza da ƙarfi: yanayin kernel ya canza, kuma babu mai mallakar tsarin da ya san ya kamata dokar ta kasance. Wannan shi ne dukan bambanci tsakanin doka da ke rayuwa da wadda ba ta rayuwa. A kan mai masauki da systemd-networkd, maganin shi ne a ba dokar mai mallaka maimakon sake gudanar da umarnin bayan kowace sake haɗawa.

Doka tana wanzuwa ne kawai idan wani ya mallake ta

Manufar tuƙin kernel yanayi ne ba tsari ba. Tana rayuwa a cikin tsarin da ke gudana, kuma duk abin da ya rushe hanyar sadarwar da take dogaro da ita zai iya ɗauke ta. Umarnin shell yana canza wannan yanayin kuma ba ya barin wani rikodin niyya.

Masu kula da cibiyar sadarwa suna aiki akasin haka: suna karanta tsari, suna amfani da shi, kuma suna sake amfani da shi sa'ad da wani yanayi na mahaɗi ya ɓata yanayin da ya gabata. Dokar da aka bayyana a tsarinsu ana sake ƙirƙira ta, yayin da dokar da aka ƙara a gefensu wani abu ne na waje marar mai mallaka.

Wannan bambancin yana da suna a cikin networkd, kuma ya cancanci karantawa kafin ka kunna wani abu. A sabbin sigogi ana cire dokokin waje ta tsohuwa, abin da ke ba mutanen da suke tsammanin shigarsu ta hannu za ta dawwama mamaki.

Karanta sigar kafin ka amince da wani saiti

Halin mallaka ana sarrafa shi da wani saiti a cikin networkd.conf, kuma wannan saitin babu shi a tsofaffin fitattun systemd. Duba sigar da aka girka kafin ka yi zane a kanta, domin tsohon mai masauki yana da hali daban da takardun da kake karantawa.

Ma'auni biyu suna da muhimmanci. Ɗaya yana yanke shawara ko ana cire dokokin da ba a bayyana a tsarin networkd ba, ɗayan kuma yana yin haka ga hanyoyi. Dukansu game da mallaka ne ba game da abin da manufar ta ƙunsa ba, kuma dukansu suna zaɓar mafi tsayin hali ta tsohuwa a sigogin yanzu. Kashe su gaba ɗaya yana kiyaye kowace dokar waje da rai, wanda shi ne shawara da ta fi bayyana manufar VPN ɗaya nufi faɗi.

systemctl --version | head -1
networkctl --version | head -1
grep -R "ManageForeign" /etc/systemd/ /usr/lib/systemd/ 2>/dev/null

Wannan grep yana gaya maka abin da aka saita a gida da abin da tsohowar mai kaya take. Rashin kasancewa ma bayani ne, domin yana nufin tsohowar da aka haɗa tana aiki. Rubuta tsohowar a cikin bayananka domin na gaba kada ya sake gano ta.

Bayyana dokar da teburin da take nuni zuwa gare shi

Doka a cikin fayil ɗin .network tana ambaton tebur, kuma wannan shi ne duk abin da suna ke yi. Ba ta ƙirƙirar hanyoyin da ke cikin wannan tebur ba, kuma ba ta duba ko suna da ma'ana. Bayyana dokar ba tare da hanyoyin ba yana haifar da manufar da ta dace da zirga-zirga sannan ta watsar da ita.

Bayyana hanyoyin a cikin wannan fayil ɗin, tare da tsalle-tsalle na gaba da za a iya isa da madaidaicin tebur. Riƙe fifiko a cikin dokar da aka bayyana domin ta sauka inda kake tsammani a cikin jeri mai tsari. Dokar da ta isa teburin da ba daidai ba kafin lokacin da aka yi niyya tana canza zirga-zirga fiye da sabis ɗin da kake son gyara. Karanta guntun da ke ƙasa a matsayin siffa ba cikakken fayil ba, domin mallakar hanyar sadarwa da sauran haɗin dole su kasance.

[RoutingPolicyRule]
Family=ipv4
IPProtocol=tcp
SourcePort=443
Table=100
Priority=1000

[Route]
Destination=10.80.0.0/24
Gateway=10.80.0.1
Table=100

Sa'an nan sake loda ka karanta yanayin kernel maimakon fayil ɗin. Tsarin da aka yi nazari da tsabta zai iya haifar da dokar da ba ka yi niyya ba, kuma ra'ayoyin biyu suna daidaitawa ne kawai lokacin da bayanin ya cika.

Zaɓi mai mallaka ɗaya ga hanyar sadarwa

Masu kula biyu a kan rami ɗaya suna haifar da faɗa da ke kama da matsala a dukansu. Shigo da wani tsarin wg-quick da ke akwai zuwa networkd ƙaura ne ba ƙari ba, kuma gudanar da duka biyu yana barin hanyar sadarwa da dokokinta ƙarƙashin masu mallaka biyu.

Yi ƙaurar a lokaci ɗaya: dakatar da tsohuwar unit, kashe ta, bayyana hanyar sadarwa da hanyoyinta a cikin networkd, sannan sake loda. Duba cewa tsohuwar unit ba za ta iya dawowa a lokacin tashi ba. Wata unit da ta ragu da ke sake kunnawa bayan sake tashi tana rubuta a kan yanayin da ka bayyana yanzu. Riƙe tsohon fayil ɗin tsari har sabon ya rayu bayan sake haɗawa, sannan ka yi masa ritaya.

Mallakar alamar ta cancanci irin wannan kulawa: idan doka ta dace da alamar wutar bango, wani abu dole ya saita wannan alamar. Dokar da ke nuni ga alamar da babu wanda ke saita ta tsari ne matattu da ke kama da na ganganci.

Gwada abubuwan da ke faruwa a rayuwa

Tsari yana da kyau gwargwadon halinsa a cikin abubuwan da ke faruwa. Saurara mahaɗin ƙasa, ɗaga shi, sake kunna sabis ɗin kuma sabunta adireshin. Bayan kowanne, karanta jerin dokoki da abin da ke cikin tebur.

sudo networkctl reload
ip rule show
ip route show table 100
sudo systemctl restart systemd-networkd

Sakamakon da ake nufi shi ne a sake ƙirƙirar irin wannan manufar mai mallaka da kuma yi wa tsohon yanayi ritaya, wanda ya fi dawwama fiye da sake ƙara dokar shell bayan kowace sake haɗawa. Riƙe layi ɗaya a cikin rikodin canji wanda ke ambaton fayil ɗin da ya mallaki dokar da sigar da ke tallafa mata. Sa'an nan injiniya na gaba zai iya samun manufar ba tare da bincika tarihin shell ba. Dokar da babu wanda ya mallaka doka ce da za a sake rasa.

Labarai masu alaƙa