Angielskifrancuskihiszpański

Ad


Ulubiona usługa OnWorks

cfgmaker — online w chmurze

Uruchom cfgmaker w darmowym dostawcy hostingu OnWorks przez Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS

Jest to polecenie cfgmaker, które można uruchomić u dostawcy bezpłatnego hostingu OnWorks przy użyciu jednej z wielu naszych bezpłatnych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online systemu Windows lub emulator online MAC OS

PROGRAM:

IMIĘ


cfgmaker - Tworzy pliki mrtg.cfg (dla mrtg-2.17.4)

STRESZCZENIE


cfgmaker [opcje] [community@]router [[opcje] [community@]router ...]

OPCJE


--ifref=nazwa odniesienia do interfejsu według nazwy interfejsu (domyślnie)
--ifref=ip ... według adresu IP
--ifref=eth ... według numeru Ethernet
--ifref=descr ... według opisu interfejsu
--ifref=nr ... według numeru interfejsu
--ifref=type ... według typu interfejsu
Możesz także użyć wielu opcji oddzielonych przecinkami,
w takim przypadku używany jest pierwszy dostępny:
np. --ifref=ip,nazwa,nr

--ifdesc=nr opis interfejsu używa numeru interfejsu (domyślnie)
--ifdesc=ip ... używa adresu IP
--ifdesc=eth ... używa numeru Ethernet
--ifdesc=descr ... używa opisu interfejsu
--ifdesc=nazwa ... używa nazwy interfejsu
--ifdesc=nazwa_kota ... używa nazwy interfejsu CatOS
--ifdesc=ppname ... używa nazwy portu paszportu
--ifdesc=alias ... używa aliasu interfejsu
--ifdesc=type ... używa typu interfejsu
Możesz także użyć wielu opcji oddzielonych przecinkami,
w takim przypadku używany jest pierwszy dostępny:
np. --ifdesc=nazwa_kota,nazwapp,descr,alias,ip,nazwa,nr

--if-filter=f Przetestuj każdy interfejs pod kątem filtru f, aby zdecydować, jaka będzie pogoda
lub nie włączać tego interfejsu do kolekcji.
Obecnie f jest oceniane jako wyrażenie Perla
a jego wartość logiczna jest używana do odrzucenia lub zaakceptowania
berło.
(Eksperymentalna, w trakcie opracowywania, może ulec zmianie)

--if-template=plik szablonu
Zamień normalne wpisy docelowe dla interfejsów
z wpisem określonym przez zawartość pliku
plik szablonu. Plik ma zawierać Perl
kod do wykonania w celu wygenerowania linii dla
cel w pliku konfiguracyjnym.
(Eksperymentalna, w trakcie opracowywania, może ulec zmianie)

--host-template=plik szablonu
Oprócz tworzenia celów dla interfejsów hosta
utwórz również cele dla samego hosta, jak określono
przez zawartość pliku templatefile. Plik jest
ma zawierać kod Perla do wykonania w celu wygenerowania
wiersze dotyczące celów związanych z hostem (takich jak procesor,
pomiary czasu odpowiedzi na ping itp.) w konfiguracji
plik uration.
(Eksperymentalna, w trakcie opracowywania, może ulec zmianie)

--global "x: a" dodaje globalne wpisy konfiguracji

--no-down nie sprawdza statusu administratora ani użytkownika interfejsów

--show-op-down pokazuje interfejsy, które nie działają

--zero-speed=spd używa tej prędkości w bitach na sekundę jako interfejsu
prędkość dla wszystkich interfejsów, które zwracają prędkość równą 0
przez ifSpeed/ifHighSpeed. 100 Mb/s = 100000000

--subdirs=format nadaje każdemu routerowi własny podkatalog, nadając każdemu routerowi nazwę per
„format”, w którym będą HOSTNAME i SNMPNAME
zastąpione wartościami tych elementów — np.
--subdirs=NAZWA HOSTA lub --subdirs="NAZWA HOSTA (NAZWA SNMP)"

--noreversedns nie odwraca numerów IP wyszukiwania wstecznego

--community=cmty Ustaw domyślny ciąg społeczności na „cmty” zamiast na
"publiczny".

--enable-ipv6 Włącz obsługę IPv6, jeśli wymagane biblioteki są
obecny. Numeryczne adresy IPv6 muszą być dołączone
w nawiasach kwadratowych, np. public@[2001:760:4::1]:161

--use-16bit Używa 16-bitowych identyfikatorów żądań SNMP do wysyłania zapytań do wszystkich routerów.

--snmp-opcje=:[ ][:[ ][:[ ][:[ ][: ]]]]

Określ domyślne opcje SNMP, które mają być dołączone do wszystkich
następujące routery. Poszczególne pola mogą być puste.
Następujące routery mogą zastąpić niektóre lub wszystkie
opcje podane --snmp-options.

--dns-domena=domena
Określa domenę, która ma zostać dołączona do nazwy wszystkich
następujące routery.

--nointerfaces Nie generuje żadnych linii konfiguracyjnych dla interfejsów,
pomiń krok zbierania informacji o interfejsie i
nie uruchamiaj żadnego kodu szablonu interfejsu.

--interfaces Generuje linie konfiguracyjne dla interfejsów (jest to plik
domyślny). Głównym celem tej opcji jest negacja
--nointerfaces pojawiające się wcześniej w wierszu poleceń.

--Pomoc krótka wiadomość pomocy
--mężczyzna pełna dokumentacja
--version wypisuje wersję cfgmakera

--output=file wyjściowa nazwa pliku domyślnie to STDOUT

OPIS


Konfgmaker tworzy pliki konfiguracyjne MRTG na podstawie informacji pobranych z routera lub
inne zarządzalne urządzenie SNMP.

[społeczność@]Router

Społeczność to nazwa wspólnoty urządzenia, dla którego chcesz utworzyć konfigurację. Jeśli
nie określono, domyślnie jest to „publiczny'; możesz najpierw spróbować tego, jeśli nie
znać wspólnotową nazwę urządzenia. Jeśli użyjesz niewłaściwej nazwy społeczności, tak się stanie
nie uzyskać odpowiedzi od urządzenia.

Router to nazwa DNS lub numer IP urządzenia zarządzanego przez SNMP. Podążając za nazwą
możesz określić 6 dalszych opcji oddzielonych dwukropkami. Pełna składnia wygląda następująco:

Router[:[gotowy][:[tmout][:[powrót][:[cofnąć się][:do]]]]]

Szczególnie interesujący może być ostatni parametr, do. Jeśli ustawisz to na „2”, to twój
urządzenie zostanie przepytane z żądaniami SNMP w wersji 2. Pozwala to na sondowanie 64-bitowego
liczniki ruchu w urządzeniu, dzięki czemu będzie działać znacznie lepiej z szybkimi interfejsami (nie
więcej przekroczeń licznika). Zwróć uwagę, że kolejność routerów jest określona w pliku
linii poleceń mają znaczenie, ponieważ ta sama kolejność jest używana podczas generowania pliku konfiguracyjnego.
Pierwszy określony router ma najpierw wygenerowane wiersze konfiguracji, a następnie
linie należące do następnego routera i tak dalej.

Zauważ, że pierwsza linia wygenerowanego pliku cfg będzie zawierała całą linię poleceń
opcje użyte do jego wygenerowania. Ma to pozwolić na łatwą „regenerację” w przypadku
chcesz dodać nowe hosty lub wprowadzić inną globalną zmianę.

systemu
Z wyjątkiem --wyjście i --światowy opcji, wszystkie opcje mają wpływ tylko na routery
podążanie za nimi w wierszu poleceń. Jeśli opcja określona wcześniej w wierszu poleceń
pojawi się później w linii poleceń z inną wartością, nowa wartość zastępuje starą
wartość, jeśli chodzi o pozostałe routery. W ten sposób opcje mogą być dostosowane do
grupy routerów lub dla poszczególnych routerów.

See --wyjście i --światowy jak ich zachowanie zależy od tego, gdzie i ile razy
pojawiają się w wierszu poleceń.

Zobacz Przykłady poniżej, jak ustawić opcję inaczej dla wielu routerów.

--help
Wydrukuj krótką wiadomość pomocy i wyjdź.

--facet
Drukuje stronę podręcznika i wychodzi.

--wersja
Wydrukuj wersję cfgmakera. Powinno to pasować do wersji MRTG, dla której config
pliki są tworzone.

--ifref nr|ip|Et|opis|Nazwa
Wybierz metodę identyfikacji interfejsu. Wartość domyślna to nr który identyfikuje router
interfejsy według ich liczby. Niestety schemat numeracji interfejsów w SNMP
drzewo może się zmienić. Niektóre routery zmieniają swoją numerację po dodaniu nowych interfejsów,
inni zmieniają numerację przy każdej pełni księżyca dla zabawy.

Aby obejść ten smutny problem, MRTG może identyfikować interfejsy za pomocą 4 innych właściwości.
Żaden z nich nie działa dla wszystkich interfejsów, ale powinieneś być w stanie znaleźć taki, który działa
dobrze dla ciebie. Zauważ, że szczególnie adresy ethernetowe mogą być problematyczne, jak niektóre
routery mają ten sam adres ethernetowy na większości swoich kart interfejsu.

Wybierz ip identyfikować interfejs po jego numerze IP. Używać Et korzystać z ethernetu
adres do identyfikacji. Używać opis aby skorzystać z opisu interfejsu. Albo użyj Nazwa do
użyj nazwy interfejsu.

Jeśli chcesz, możesz określić wiele właściwości, oddzielając je przecinkami. W tym przypadku,
cfgmaker użyje pierwszego elementu na liście, który może zapewnić unikalną identyfikację.
Pozwala to określić na przykład użycie adresu IP i użycie ifName, jeśli this
nie jest określony:
--ifref ip,nazwa

Jeśli wybrana przez Ciebie metoda nie pozwala na jednoznaczną identyfikację interfejsu na urządzeniu
pytają, kreator cfg opowie ci o tym.

--ifdesc nr|ip|Et|opis|Nazwa|rodzaj|alias
Wybierz, czego chcesz użyć jako opisu interfejsu. Opis pojawia się w
właściwość „Title[]” dla celu, jak również nagłówek tekstowy w kodzie HTML
zdefiniowane w „PageTop[]” celu. Domyślnie jest używany nr który jest tylko interfejsem
liczba, która nie zawsze jest przydatna dla widza wykresów.

Istnieje 6 innych właściwości, które można wykorzystać. Używać ip jeśli chcesz skorzystać z tzw
adres IP interfejsu. Używać Et jeśli chcesz użyć adresu ethernetowego interfejsu.
Jeśli chcesz uzyskać lepszy opis, możesz użyć jednego z nich opis, Nazwa or alias. Dokładnie
to, co każdy z nich robi, różni się w zależności od różnych urządzeń, więc może być konieczne
eksperyment. Na przykład dla interfejsu szeregowego na routerze Cisco z systemem IOS
Nazwa może spowodować, że „S0” będzie opisem interfejsu, opis może spowodować
„Serial0” i alias może skutkować „Link do HQ” (pod warunkiem, że jest to używane jako
„opis” interfejsu w konfiguracji routera).

Wreszcie, jeśli chcesz opisać interfejs za pomocą jego typu B (tj. „ethernetCSMA”,
„propPointtoPoint” itp.), którego możesz użyć rodzaj.

Jeśli chcesz, możesz określić wiele właściwości, oddzielając je przecinkami. W tym przypadku,
cfgmaker użyje pierwszej pozycji na liście dostępnej dla tego interfejsu.
Pozwala to określić, na przykład, użycie dowolnego z różnych aliasów w kolejności
preferencji.

--jeśli-filtr 'filtr-wyrażenie'
Po pierwsze, jest to w fazie rozwoju i ma charakter eksperymentalny.

Użyj tego, jeśli chcesz mieć lepszą kontrolę nad tym, jakie interfejsy są uwzględniane
konfiguracja. The filtr-wyrażenie jest oceniany jako fragment kodu Perla i jest
oczekuje się, że zwróci wartość logiczną. Jeśli prawda, dołącz interfejs, a jeśli fałsz,
Wyklucz interfejs.

Więcej informacji na temat działania tych filtrów można znaleźć w sekcji „Szczegóły dot
Filtry” poniżej.

--if-szablon plik szablonu
Po pierwsze, jest to w fazie rozwoju i ma charakter eksperymentalny.

Użyj tego, jeśli chcesz kontrolować, jak linia dla każdego celu powinna wyglądać w pliku
plik konfiguracyjny. Zawartość pliku plik szablonu zostanie oceniony jako A
Program w języku Perl, który generuje linie przy użyciu określonych zmiennych do wprowadzania i wyprowadzania.

Więcej informacji na temat działania tych szablonów można znaleźć w sekcji „Szczegóły dot
Szablony” poniżej.

--host-szablonu plik szablonu
Po pierwsze, jest to w fazie rozwoju i ma charakter eksperymentalny.

Użyj tego, jeśli chcesz mieć dodatkowe cele związane z samym hostem, takie jak procesor
wykorzystanie, czas odpowiedzi ping do hosta, liczba zajętych modemów itp. Zawartość
pliku plik szablonu zostanie oceniony raz na hosta jako program Perla, który
generuje linie przy użyciu pewnych zmiennych dla danych wejściowych i wyjściowych.

Więcej informacji na temat działania tych szablonów można znaleźć w sekcji „Szczegóły dot
Szablony” poniżej.

--wspólnota ciąg-społeczności
Użyj tego, aby ustawić społeczność dla routerów następujących po wierszu poleceń
ciąg-społeczności. Poszczególne routery mogą zastąpić ten ciąg społeczności, używając
składnia społeczność@router.

--włącz-ipv6
Ta opcja włącza obsługę protokołu IPv6. Wymaga odpowiednich modułów Perla; Jeśli oni
nie zostaną znalezione, protokół IPv6 jest wyłączony (zobacz dokumentację protokołu IPv6).

cfgmaker użyje IPv6 lub IPv4 w zależności od celu. Jeśli celem jest liczba
adres, protokół zależy od rodzaju adresu. Jeśli celem jest nazwa hosta,
cfgmaker spróbuje przetłumaczyć nazwę najpierw na adres IPv6, a następnie na adres IPv4
adres.

Adresy numeryczne IPv6 muszą być podane w nawiasach kwadratowych.

Na przykład:

cfgmaker --enable-ipv6 [2001:760:4::1]:165:::2

Jeśli cel ma zarówno adres IPv6, jak i adres IPv4 z tą samą nazwą hosta,
cfgmaker najpierw wysyła zapytanie do celu przy użyciu protokołu IPv6 i powraca do protokołu IPv4, jeśli się nie powiedzie. Ten
jest przydatne dla celów, które nie obsługują SNMP przez IPv6.

--use-16bit
Ta opcja wymusza użycie 16-bitowych identyfikatorów żądań SNMP. Niektóre zepsute agenty SNMP nie
akceptuj 32-bitowe identyfikatory żądań. Staraj się unikać tej opcji tak bardzo, jak to możliwe, narzekaj
zamiast tego sprzedawca agenta.

--snmp-opcje :[Port][:[Timeout][:[ponownych prób][:[cofnąć się][:wersja]]]]
Użyj tego, aby ustawić domyślne opcje SNMP dla wszystkich routerów wykonujących polecenie
linia. Poszczególne wartości mogą zostać pominięte, podobnie jak końcowe dwukropki. Zauważ to
routery mogą zastąpić poszczególne (lub wszystkie) wartości określone przez --snmp-opcje stosując
składnia

Router[:[Port][:[Timeout][:[ponownych prób][:[cofnąć się][:wersja]]]]]

--światowy "bla: ABC"
Użyj tego, aby dodać opcje globalne do wygenerowanego pliku konfiguracyjnego. Możesz zadzwonić --światowy
kilka razy, aby dodać wiele opcji. Linia pojawi się tylko w konfiguracji
przed wyświetleniem konfiguracji następnego routera w wierszu poleceń.

--global "katalog roboczy: /home/mrtg"

Jeśli chcesz mieć kilka domyślnych opcji, które możesz chcieć umieścić

--global "opcje [_]: wzrost, bity"

Określanie --światowy po ostatnim routerze w wierszu poleceń utworzy linię in
plik konfiguracyjny, który pojawi się po wszystkich routerach.

--noreversens
Nie próbuj wstecznego wyszukiwania numerów IP... jest to konieczne w środowiskach wolnych od DNS.

--nie-w dół
Zwykle cfgmaker nie będzie zawierał interfejsów, które są oznaczone inaczej
UP administracyjnie i operacyjnie. Dzięki temu przełącznikowi masz je wszystkie.

--show-op-down
Uwzględnij interfejsy, które nie działają.

--prędkość zerowa prędkość
Przypisz tę prędkość w bitach na sekundę do wszystkich interfejsów, które zwracają 0 dla ifSpeed ​​i
jeśliWysoka prędkość. Niektóre przełączniki, zwłaszcza wyposażenie odlewni, zwracają prędkość zerową dla
niektóre interfejsy. Na przykład, aby wszystkie interfejsy zgłaszające zero były ustawione na 100 Mb/s,
użyj --zero-speed=100000000.

--katalogi podrzędne format
Przydziel każdemu routerowi własny podkatalog na pliki HTML i pliki graficzne (lub .rrd). The
podana jest nazwa katalogu format string z kilkoma zamianami wzorców. The
ciąg „NAZWA_HOSTA” zostanie zastąpiony nazwą hosta routera (jednak ty
określił to na kreator cfg wiersz poleceń — może to być rzeczywista nazwa hosta lub tylko adres IP
adres), a „SNMPNAME” zostanie zastąpione pomysłem urządzenia na jego własną nazwę (tzw
ta sama nazwa, która pojawia się po prawej stronie wierszy „Tytuł”). Na przykład wezwanie
lubić:

cfgmaker --subdirs=NAZWAHOSTA____NAZWASNMP [email chroniony]

spowodowałoby wygenerowanie linii wyglądających mniej więcej tak:

Directory[10.10.0.18_1]: 10.10.0.18__fp2200-bothrip-1.3

--wyjście filet
Napisz wyjście z kreator cfg do pliku filet. Domyślnie używane jest „STDOUT”.
--wyjście oczekuje się, że pojawi się tylko raz w wierszu poleceń. W przypadku wielokrotnego użycia
plik określony przez last --wyjście będzie użyty.

--nointerfejsy
Nie generuj wierszy konfiguracji dla interfejsów.

To sprawia, że ​​cfgmaker pomija wszystkie kroki związane z interfejsami, co oznacza, że ​​nie będzie działać
każde odpytywanie routera w celu pobrania informacji o interfejsie, co przyspiesza
wykonanie cfgmakera i nie uruchomi żadnych szablonów interfejsu.

--interfejsy
Powoduje to, że cfgmaker generuje linie konfiguracyjne dla interfejsów (domyślnie
zachowanie).

Głównym zastosowaniem tej opcji jest zanegowanie --nointerfaces pojawiającego się wcześniej w pliku
wiersz poleceń.

SNMP V3 Opcje
Konfgmaker obsługuje SNMP V3 przy użyciu Sieć: SNMP moduł Perla. Istnieją opcjonalne parametry
wpływających na działanie SNMP.

--enablesnmpv3 {tak|nie}
Połączenia --włącza nmpv3 option to opcjonalna flaga do sprawdzania obecności
Sieć::SNMP biblioteki. Konfgmaker spróbuje ustalić, czy ta flaga jest wymagana i
automatycznie ustawi wartości.

SNMPv3 Argumenty

Kontekst SNMP to zbiór informacji zarządzania dostępnych dla jednostki SNMP. Jakiś
element informacji zarządzania może istnieć w więcej niż jednym kontekście i jednostce SNMP
potencjalnie ma dostęp do wielu kontekstów. Kombinacja contextEngineID i a
contextName jednoznacznie identyfikuje kontekst w domenie administracyjnej. W
Komunikat SNMPv3, contextEngineID i contextName są zawarte jako część scopedPDU.
Wszystkie metody generujące komunikat SNMP opcjonalnie przyjmują a --kontekstengineid i
--nazwakontekstu argument, aby skonfigurować te pola.

Identyfikator silnika kontekstu
Połączenia --kontekstengineid argument oczekuje ciągu szesnastkowego reprezentującego pożądane
identyfikator silnika kontekstu. Ciąg musi mieć od 10 do 64 znaków (od 5 do 32 oktetów) i może
być poprzedzone opcjonalnym „0x”. Kiedyś --kontekstengineid jest określone, że zostaje
z obiektem, dopóki nie zostanie ponownie zmieniony lub przywrócony do wartości domyślnych, przekazując plik
niezdefiniowana wartość. Domyślnie contextEngineID jest ustawiony tak, aby pasował do
AuthoritativeEngineID autorytatywnego silnika SNMP.

Nazwa kontekstu
ContextName jest przekazywana jako ciąg, który musi mieć długość od 0 do 32 oktetów przy użyciu metody
--nazwakontekstu argument. ContextName pozostaje z obiektem, dopóki nie zostanie zmieniony.
Domyślną wartością contextName jest pusty ciąg, który reprezentuje kontekst „domyślny”.

Oparte na użytkownikach Bezpieczeństwo Model Argumenty

Model zabezpieczeń oparty na użytkownikach (USM) używany przez SNMPv3 wymaga, aby nazwa_bezpieczeństwa była
określone za pomocą --Nazwa Użytkownika argument. Tworzenie obiektu Net::SNMP za pomocą
wersja ustawiona na SNMPv3 zakończy się niepowodzeniem, jeśli plik --Nazwa Użytkownika argument nie występuje. The --Nazwa Użytkownika
argument oczekuje łańcucha o długości od 1 do 32 oktetów.

Różne poziomy bezpieczeństwa są dozwolone przez model bezpieczeństwa oparty na użytkownikach, który adres
kwestie związane z uwierzytelnianiem i prywatnością. Cel SNMPv3 określi poziom bezpieczeństwa
(poziom bezpieczeństwa) na podstawie którego z poniższych argumentów określono.

Domyślnie przyjmowany jest poziom bezpieczeństwa „noAuthNoPriv”. jeśli --klucz autoryzujący or
--hasło uwierzytelnienia podane są argumenty, poziom bezpieczeństwa przyjmuje wartość „authNoPriv”. The
--hasło uwierzytelnienia argument oczekuje łańcucha o długości co najmniej 1 oktetu. Opcjonalnie,
dotychczasowy --klucz autoryzujący można użyć argumentu, aby hasło w postaci zwykłego tekstu nie było konieczne
określone w skrypcie. The --klucz autoryzujący argument oczekuje ciągu szesnastkowego utworzonego przez
lokalizowanie hasła z autorytatywnym identyfikatorem silnika dla określonego miejsca docelowego
urządzenie. Można użyć narzędzia "snmpkey" zawartego w dystrybucji Net::SNMP
utwórz ciąg szesnastkowy (patrz snmpkey).

SNMPv3 definiuje dwa różne algorytmy mieszania, które mogą być używane przez zabezpieczenia
Model uwierzytelniania. Te algorytmy to HMAC-MD5-96 „MD5” (RFC 1321) i
HMAC-SHA-96 "SHA-1" (NIST FIPS PUB 180-1). Domyślnym algorytmem używanym przez moduł jest
HMAC-MD5-96. To zachowanie można zmienić za pomocą --protokół autoryzacji argument. Ten
argument oczekuje, że w celu zmodyfikowania skrótu zostanie przekazany ciąg „md5” lub „sha”.
algorytm.

Określając argumenty --klucz prywatny or --privhasło poziom bezpieczeństwa powiązany z
obiekt staje się „authPriv”. Zgodnie z SNMPv3 prywatność wymaga użycia
uwierzytelnianie. Dlatego, jeśli którykolwiek z tych dwóch argumentów jest obecny i --klucz autoryzujący
or --hasło uwierzytelnienia brakuje argumentów, utworzenie obiektu kończy się niepowodzeniem. The --klucz prywatny
i --privhasło argumenty oczekują takich samych danych wejściowych jak argumenty --klucz autoryzujący i --hasło uwierzytelnienia
odpowiednio argumenty.

Model zabezpieczeń oparty na użytkownikach opisany w dokumencie RFC 3414 definiuje pojedynczy protokół szyfrowania
być używany do prywatności. Ten protokół, CBC-DES „DES” (NIST FIPS PUB 46-1), jest używany przez
default lub jeśli ciąg „des” jest przekazywany do --protokół prywatny argument. Pracując z
konsorcjum rozszerzonych opcji bezpieczeństwa http://www.snmp.com/eso/, moduł również
obsługuje dodatkowe protokoły, które zostały zdefiniowane w projektach specyfikacji. Projekt
http://www.snmp.com/eso/draft-reeder-snmpv3-usm-3desede-00.txt określa wsparcie
CBC-3DES-EDE „Triple-DES” (NIST FIPS 46-3) w modelu bezpieczeństwa opartym na użytkownikach. Ten
protokół można wybrać za pomocą --protokół prywatny argument z łańcuchem „3desede”. The
projekt http://www.snmp.com/eso/draft-blumenthal-aes-usm-04.txt opisuje użycie
CFB128-AES-128/192/256 „AES” (NIST FIPS PUB 197) w USM. Trzy szyfrowanie AES
protokoły, różniące się rozmiarem klucza, można wybrać, przekazując „aescfb128”,
„aescfb192” lub „aescfb256” do pliku -prywatny protokół argumenty.

Szczegóły on filtry
Celem filtrów jest podjęcie decyzji, które interfejsy zaakceptować, a które interfejsy
odrzucić. Ta decyzja jest podejmowana dla każdego interfejsu poprzez ocenę wyrażenia filtrującego jako a
fragment kodu Perla i zbadanie wyniku oceny. Jeśli to prawda, zaakceptuj
interfejs w przeciwnym razie go odrzuci.

Podczas pracy z filtrami pamiętaj, że Perl ma własne pojęcie o tym, co jest prawdą, a co fałszem
Jest. Pusty ciąg „” i ciąg „0” są fałszywe, wszystkie pozostałe ciągi są prawdziwe. Ten
dalej implikuje, że każda wartość całkowita równa 0 jest fałszywa, podobnie jak dowolna wartość undef. To również
oznacza, że ​​wszystkie odniesienia są uważane za prawdziwe.

Ponieważ filtr jest oceniany jako wyrażenie Perla, kilka przydatnych konstrukcji w Perlu jest ocenianych
warte wspomnienia:

Wyrażenia można grupować za pomocą nawiasów „()”. Wyrażenia można łączyć
używając operatorów boolowskich, takich jak:

"i" (odpowiednik "&&")
Logiczne „i” z dwóch wyrażeń jest prawdziwe tylko wtedy, gdy oba wyrażenia są prawdziwe.
Przykład: wyrażenie1 i wyrażenie2

"or" (odpowiednik "||")
Logiczne „lub” z dwóch wyrażeń jest prawdziwe, jeśli jedno lub oba wyrażenia są prawdziwe.
Przykład: wyrażenie1 or wyrażenie2

"nie" (odpowiednik "!")
Logiczna negacja pojedynczego wyrażenia. Przykład: nie wyrażenie . Jeszcze inny
przykład: !wyrażenie

(Aby uzyskać więcej informacji na ten temat, polecam książkę o Perlu)

Predefiniowane FILTRY Zmienne

Aby to ułatwić, w filtrze dostępnych jest kilka predefiniowanych wartości.
Należy zauważyć, że te zmienne są również dostępne, gdy oceniane są interfejsy szablonów (ale
nie hostować szablonów).

Zastrzeżenie: Nazwy wszystkich tych zmiennych zaczynają się od znaku dolara ($), co jest składnią
wymagania dotyczące zmiennych skalarnych w Perlu. Niebezpieczeństwo polega na tym, że znak dolara pojawia się w wielu
shells jest aktywnym znakiem (często używanym dla zmiennych powłoki dokładnie tak, jak w Perlu
zmienne), dlatego ważne jest, aby upewnić się, że wyrażenie Perla nie jest oceniane przez
powłoki wiersza poleceń jako kodu powłoki przed przekazaniem do cfgmaker jako wiersza poleceń
argumenty. W powłokach takich jak powłoka Bourne'a, powłoka ksh lub powłoka bash umieszczanie całości
wyrażenie w pojedynczych cytatach pozwoli uniknąć takiej przypadkowej oceny:

'--if-filter=($default_iftype && $if_admin)'

$jeśli_typ
Jest to liczba całkowita określająca typ interfejsu zgodnie ze standardami SNMP i as
zgłaszane przez odpytywane urządzenie. Pełna lista typów interfejsów byłaby
niepraktyczne dla tego dokumentu, ale poniżej znajduje się kilka predefiniowanych zmiennych.
Zwykle cfgmaker umieszcza w PageTop celu tę wartość iftype w nawiasach
po nazwie typu interfejsu. (np. "propPointToPointSerial (22)").

Oto lista niektórych najpopularniejszych typów interfejsów według numerów:

6 EthernetCsmacd
7 iso88023csmacd
9 iso88025TokenRing
15 fddi
19 E1
20 podstawowych ISDN
21 podstawowy ISDN
22 propPointToPointSerial
23 ppp
24 oprogramowanieLoopback
30 ds3
32 przekaźnik ramkowy
33 rs232
37 atm
39 sonetów
Usługa 44-ramkowego przekaźnika
46 hssi
49 aal5
53 propWirtualny
62 Szybki Ethernet (100BaseT)
63 ISDN i X.25
69 Pełny dupleks Fast Ethernet (100BaseFX)
94 Asymetryczna cyfrowa pętla abonencka (ADSL)
117 Gigabit Ethernet
Podinterfejs 134 ATM

$domyślne
Prawda wtedy i tylko wtedy, gdy cfgmaker powinien normalnie akceptować interfejs oparty na
stan administracyjny i operacyjny interfejsów (przyjęcie flag --nie-w dół i
--show-op-down pod uwagę) i jego typ (i kilka innych rzeczy).

$domyślny_jeśli stan
Prawda wtedy i tylko wtedy, gdy cfgmaker zaakceptowałby interfejs oparty na nim
stany operacyjne i administracyjne (uwzględniając również obecność tzw
Flagi --nie-w dół i --show-op-down).

$domyślny_jeślityp
Prawda wtedy i tylko wtedy, gdy cfgmaker zaakceptowałby interfejs na podstawie jego typu (i
dodatkowo kilka szczegółów specyficznych dla typu).

$if_admin
Prawda wtedy i tylko wtedy, gdy interfejs jest w trybie administracyjnym.

$if_oper
Prawda wtedy i tylko wtedy, gdy interfejs jest w stanie operacyjnym.

Szereg zmiennych jest również wstępnie zdefiniowanych, aby łatwo zdecydować, czy interfejs należy do a
określonej kategorii lub nie. Poniżej znajdują się wszystkie zmienne wymienione razem z if_type
liczby, dla których każda zmienna będzie prawdziwa. Zauważ, że niektóre zmienne odnoszą się do innych zmiennych
, jak również.

$if_is_ethernet
Prawda dla interfejsów ethernetowych (nr 6, 7, 26, 62, 69 i 117).

$if_is_isdn
Prawda dla różnych typów interfejsów ISDN (nr 20, 21, 63, 75, 76 i 77)

$if_is_dialup
Dotyczy interfejsów dial-up, takich jak PPP i ISDN. (nr 23, 81, 82 i 108 w
dodatek do numerów $if_is_isdn).

$if_is_atm
Prawda dla różnych typów interfejsów związanych z bankomatami (nr 37, 49, 107, 105, 106, 114 i
134).

$if_is_wan
Prawda dla interfejsów WAN punkt-punkt, Frame Relay i High Speed ​​Serial (
22,32,44,46)

$if_is_lan
Dotyczy interfejsów LAN (8, 9, 11, 15, 26, 55, 59, 60 i 115 oprócz
Numery tego $if_is_ethernet).

$if_is_dsl
Prawda dla ADSL, RDSL, HDSL i SDSL (nr 94, 95, 96, 97)

$if_is_loopback
Prawda dla interfejsów sprzężenia zwrotnego oprogramowania (nr 24)

$if_is_ciscovlan
Dotyczy interfejsów Cisco VLAN (interfejsy ze słowem Vlan lub VLAN w ich nazwach
jeślidescs)

$if_vlan_id
Zwraca identyfikator sieci VLAN powiązany z określonym portem w przełącznikach Cisco Catalyst
zarówno Catalyst OS i IOS, jak i przełączniki 3Com. Jeśli nie jest to interfejs VLAN, będzie
powrót undef.

$if_cisco_trunk
Zwraca stan łącza trunkingowego określonego portu na przełącznikach Cisco Catalyst w obu przypadkach
Catalyst OS i IOS. Zwraca „1”, jeśli interfejsem jest łącze trunkingowe, w przeciwnym razie undef.

$jeśli_MTU
Zwraca maksymalną jednostkę transferu powiązaną z określonym portem.

Poza tym możesz także użyć zmiennych zdefiniowanych dla szablonów poniżej. Dalej wszystko
zmienne dostępne w cfgmaker są do dyspozycji skryptów nawet w przypadku ich użycia
funkcje są odradzane. Będzie więcej „skrótów” w postaci zmiennych i funkcji
udostępniane w przyszłości.

Przykłady on filtry

Następujący filtr nie wpłynie na to, które interfejsy zostaną uwzględnione lub wykluczone
spraw, aby cfgmaker zachowywał się normalnie.

'--if-filter=$domyślny'

Poniższy filtr sprawi, że cfgmaker wykluczy interfejsy PPP (23):

'--if-filter=$domyślny && $if_type!=23'

Poniższy filtr sprawi, że cfgmaker będzie zachowywał się jak zwykle, z wyjątkiem tego, że uwzględni
stan operacyjny interfejsu nie ma znaczenia, ale nadal odrzuca wszystkie interfejsy, które są
administracyjnie w dół.

'--if-filter=$if_admin && $default_iftype'

Szczegóły on Szablony
Zawartość plików szablonów jest oceniana jako program Perla. Liczba lub Perl
zmienne są dostępne dla programu do odczytu, a inne są używane do zapisywania.

Ponieważ sporo predefiniowanych zmiennych ma wartości, które mają być używane
Kod HTML niektóre z nich mają wariant „HTML-escaped”, np. $html_syslocation to kod HTML
ucieczkowy wariant $syslocation. Ucieczka HTML oznacza, że ​​znaki „<”, „>” i „&”
są zastępowane przez „<”, „>” i „&” oraz że znaki nowej linii osadzone w łańcuchu są
poprzedzone „ " i dołączony znak spacji (jeśli znak nowej linii jest ostatnim w pliku
ciąg nie jest dotykany).

Zapisu szablon Zmienne

Są to zmienne dostępne do przechowywania wierszy konfiguracji. Niektóre z nich są
inicjalizowane przed oceną szablonu, ale taką treścią są zazwyczaj komentarze
do włączenia do ostatecznego pliku konfiguracyjnego, aby te zmienne mogły zostać zresetowane do
pusty ciąg w kodzie szablonu, aby wyeliminować komentarze. W drugą stronę też jest
to możliwe, zawartość tych zmiennych można rozszerzyć o dalsze informacje
różne przyczyny, takie jak debugowanie itp.

Po ocenie szablonu dzieje się co następuje: jeśli szablon jest a
szablon interfejsu, a rzeczywisty interfejs z jakiegoś powodu został odrzucony i dlatego musi
zostać zakomentowane, wszystkie wiersze w zmiennej $ linie_docelowe są zamieniane na komentarze przez
dodanie znaku krzyżyka („#”) na ich początku. Następnie wszystkie zmienne $head_lines,
$problem_linie , $ linie_docelowe i $linie_separatora są ze sobą łączone, tworząc tzw
linie do dodania do pliku konfiguracyjnego.

$ linie_docelowe
Ta zmienna jest symbolem zastępczym dla wierszy konfiguracji utworzonych przez szablon.
$ linie_docelowe jest wstępnie zdefiniowany jako pusty podczas oceny kodu szablonu.

$head_lines
Ta zmienna ma być symbolem zastępczym dla wiersza komentarza, który pojawia się po prostu
przed celem w pliku konfiguracyjnym. Jest inicjowany tą linią komentarza
przed oceną kodu szablonu i jeśli szablon się nie modyfikuje
$head_lines podczas oceny komentarz będzie wyglądał jak zwykle w pliku konfiguracyjnym.

$problem_linie
Ta zmienna ma być symbolem zastępczym dla wierszy komentarza opisujących dowolne
problemy, które mogły wystąpić podczas próby dodania celu do pliku
konfiguracja. W przypadku szablonów hostów zwykle nie jest używany, a dla tych jest
wstępnie zdefiniowany jako pusty ciąg. Dla szablonów interfejsów $problem_linie jest predefiniowany
z komentarzami do opisu błędów, których cfgmaker normalnie użyłby do odrzucenia
interfejsów lub jako pusty ciąg dla akceptowanych interfejsów.

Istnieje możliwość przetestowania przeciwko $problem_linie aby dowiedzieć się, czy interfejs będzie
włączone lub odrzucone, ale nie jest to zalecane. Przetestuj przeciwko $jeśli_ok zamiast.

$linie_separatora
Ta zmienna jest symbolem zastępczym dla ciągu, który ma być używany jako separator między
kod dla poszczególnych celów. Zawartość tej zmiennej jest umieszczana po każdym celu
(więc linie pojawią się również po zakończeniu ostatniego celu w konfiguracji).

Predefiniowane szablon Zmienne

Wszystkie poniższe zmienne są dostępne do użycia w szablonach interfejsów. W przypadku szablonów hostów
dostępne są tylko te wymienione w sekcji „Zmienne hosta i systemu”.

W przypadku szablonów interfejsów są to również zmienne wymienione w sekcji „Predefiniowane zmienne filtru”.
dostępny.

Gospodarz i Konfiguracja Zmienne

$nazwa_routera
Jest to w pełni kwalifikowana nazwa routera. Wpływa na to co następuje
elementy w wierszu poleceń: sama nazwa routera i --dns-domena.

$połączenie_routera
To jest ciąg odniesienia dla odpytywanego routera. Jest na formularzu
community@router, po którym prawdopodobnie następują opcje snmp. Wpływa na to m.in
następujące elementy w wierszu poleceń: sama nazwa routera, --wspólnota,
--snmp-opcje i --dns-domena. (Nie ma dostępnego wariantu ze znakiem zmiany znaczenia kodu HTML)

$nazwa_katalogu
Ta zmienna powinna zawierać nazwę katalogu, której normalnie użyłby cfgmaker jako
wartość dla dyrektywy „Directory[]”. Wartość ustalana jest wg --katalogi podrzędne
opcja wiersza poleceń. Jeśli --katalogi podrzędne nie jest określony $nazwa_katalogu będzie pusty
strunowy. (Nie ma dostępnego wariantu z kodem zmiany znaczenia kodu HTML)

$syskontakt
Ta zmienna jest wartością SNMP sysContact routera. (Wariant ze znakiem ucieczki HTML:
$html_syskontakt)

$ sysname
Ta zmienna jest wartością SNMP sysName routera. (Brak dostępnego wariantu ze znakiem zmiany znaczenia kodu HTML)

$syslokacja
Ta zmienna jest wartością SNMP sysLocation routera. (Wariant ze znakiem ucieczki HTML:
$html_syslokacja)

$systemdescr
Ta zmienna jest wartością SNMP sysDescr routera. Zwykle nie jest używany przez
cfgmaker, ale może być przydatny w szablonie. (Wariant ze znakiem ucieczki HTML: $html_systemdescr)

Interfejs cel Związane z Zmienne

$nazwa_celu
To jest to, czego normalnie cfgmaker użyłby jako nazwy celu. Cel
nazwa jest tym, co znajduje się w nawiasach kwadratowych, „[]” dla dyrektyw docelowych.
(Nie ma dostępnego wariantu z kodem zmiany znaczenia kodu HTML)

$if_ref
To ciąg odniesienia dla interfejsu. Oczekuje się, że będzie używany w
Dyrektywa „Target[xyz]”, aby rozróżnić, jakiego interfejsu użyć. Wartość tego
na zmienną wpływa tzw --ifref opcja wiersza poleceń. Zwykle jest używany razem
w $połączenie_routera. (Nie ma dostępnego wariantu ze znakiem zmiany znaczenia kodu HTML)

$jeśli_ok
Ta zmienna ma wartość true, jeśli interfejs ma zostać uwzględniony w konfiguracji
plik, w przeciwnym razie false. Nie testuj z innymi zmiennymi, takimi jak $problem_linie do
dowiedzieć się, czy interfejs zostanie odrzucony, czy nie, użyj tego $jeśli_ok zamiast.

$default_target_lines
Ta zmienna zawiera wszystkie linie docelowe, które cfgmaker domyślnie wysyła w tym celu
interfejs. Jest to przydatne, jeśli chcesz mieć „standardowy cel”, ale chcesz go dodać
dodaj do niego dodatkowe linie za pomocą szablonu.

Domyślnie cfgmaker używa następujących dyrektyw dla każdego generowanego celu: Target[],
SetEnv[], MaxBytes[], Title[], PageTop[] i jeśli jest określony jakiś katalog również
Dyrektywa Directory[].

Aby ułatwić tworzenie szablonów, które generują podobne konfiguracje docelowe
do domyślnej, każda z wyżej wymienionych linii dyrektywy ma odpowiednik
zmienna zawierająca linię, ponieważ cfgmaker wypisałby ją domyślnie.

Zauważ, że żaden z nich nie ma wariantu ze znakiem ucieczki HTML, tekst w nich to HTML ze znakiem ucieczki gdzie
potrzebne. Zauważ też, że nie mają na końcu żadnej nowej linii.

$domyślna_dyrektywa_docelowa
Ta zmienna zawiera domyślny ciąg dla wiersza dyrektywy Target[].

$default_setenv_directive
Ta zmienna zawiera domyślny ciąg dla wiersza dyrektywy SetEnv[].

$domyślna_dyrektywa_katalogu
Ta zmienna zawiera domyślny ciąg dla wiersza dyrektywy Directory[] który
oznacza, że ​​jest to pusty ciąg (bez nowej linii), jeśli nie ma katalogu.

$default_maxbytes_directive
Ta zmienna zawiera domyślny ciąg dla wiersza dyrektywy MaxBytes[].

$domyślna_dyrektywa_tytułowa
Ta zmienna zawiera domyślny ciąg dla wiersza dyrektywy Title[].

$default_pagetop_directive
Ta zmienna zawiera domyślny ciąg dla wierszy dyrektywy PageTop[].

Interfejs Sieć systemu Zmienne

$if_ip
Ta zmienna powinna zawierać adres IP interfejsu, jeśli został przypisany
do tego. (Nie ma dostępnego wariantu z kodem zmiany znaczenia kodu HTML)

$ifindex
Ta zmienna to SNMP ifIndex dla interfejsu, który zgodnie z definicją zawsze ma wartość an
liczba całkowita. (Nie ma dostępnego wariantu z kodem zmiany znaczenia kodu HTML)

$if_indeks
Odpowiednik z $ifindex.

$jeśli_eth
Zawiera adres ethernetowy interfejsu, jeśli istnieje. (Nie ma ucieczki kodu HTML
dostępny wariant)

$if_speed
Ta zmienna to prędkość w bajtach/sekundę (z prefiksami). (Nie ma ucieczki kodu HTML
dostępny wariant)

$if_speed_str
Ta zmienna jest gotowym opisem prędkości, który jest w bitach lub bajtach, w zależności od tego
niezależnie od tego, czy opcja bitów jest aktywna, a także z odpowiednim przedrostkiem dla
prędkość (k, M, G itd.). (Brak dostępnego wariantu ze znakiem zmiany znaczenia kodu HTML)

$if_type_desc
Ta zmienna jest tekstowym opisem typu interfejsu. (Wariant ze znakiem ucieczki HTML:
$html_if_type_desc)

$if_type_num
Ta zmienna jest wartością całkowitą odpowiadającą typowi interfejsu (dla listy dla
wartość dla bardziej powszechnych typów interfejsów, zobacz sekcję SZCZEGÓŁY DOTYCZĄCE FILTRÓW
powyżej). (Brak dostępnego wariantu ze znakiem zmiany znaczenia kodu HTML)

$if_dns_name
To jest nazwa DNS interfejsu. (Brak dostępnego wariantu ze znakiem zmiany znaczenia kodu HTML)

Interfejs imię i nazwisko, Opis i Alias Zmienne

Może to wydawać się mylące w przypadku obu Imię, Opis i Alias w tym kontekście i dla niektórych
w jakim stopniu jest. Imię i Opis są zwykle obsługiwane przez większość urządzeń, ale w jaki sposób
są różne, zarówno między producentami, jak i między różnymi kategoriami
sprzęt tego samego producenta. The Alias jest przynajmniej obsługiwany przez Cisco IOS i
ta zmienna zawiera wszystko, co jest używane w instrukcji IOS o nazwie „opis” dla
interfejs (nie mylić ze zmiennymi SNMP dla Opis).

Aby uzyskać lepszą kontrolę z wiersza poleceń, rozważ $if_title_desc jakie są treści
kontrolowany przez --if-opis opcja linii poleceń.

$if_snmp_descr
Ta zmienna powinna zawierać „surowy” opis interfejsu określony przez
odpytywanie SNMP routera. (Wariant ze znakiem ucieczki HTML: $html_if_snmp_descr)

$if_snmp_name
„Nieprzetworzona” nazwa interfejsu podana przez sondowanie SNMP. (Wariant ze znakiem ucieczki HTML:
$html_if_nazwa_snmp)

$if_snmp_alias
„Surowy” ifAlias ​​dla interfejsu dostarczony przez sondowanie SNMP. (HTML uciekł
wariant: $html_if_snmp_alias)

$if_cisco_descr
„Surowy” CiscolocIfDescr dla interfejsu dostarczony przez sondowanie SNMP. (HTML
wariant ucieczki: $html_if_cisco_descr)

$jeśli_opis
To jest „gotowany” ciąg opisu interfejsu, biorąc pod uwagę
Znaleziono wartości SNMP dla RDescr, ifAlias ​​i CiscolocIfDescr interfejsu. (HTML
wariant ucieczki: $html_if_opis)

$jeśli_tytuł
Domyślnie cfgmaker z pełnym ciągiem znaków użyłby dyrektywy Title[] w
konfiguracji, jak również zawartość najwyższego znacznika H1 w PageTop[]. Jest
złożony z treści $desc_prefix, $if_title_desc i $ sysname.

As $jeśli_tytuł zależy $if_title_desc, można sterować pośrednio $jeśli_tytuł
za pomocą opcji wiersza poleceń --if-opis.

(Wariant ze znakiem ucieczki HTML: $html_if_title)

$if_nazwa_portu
Jeśli hostem jest przełącznik LAN Cisco Catalyst, ta zmienna jest nazwą tego portu.
(Brak dostępnego wariantu ze znakiem zmiany znaczenia kodu HTML)

$if_pp_nazwa_portu
Jeśli hostem jest przełącznik sieci LAN Nortel Passport, ta zmienna jest nazwą tego portu.
(Brak dostępnego wariantu ze znakiem zmiany znaczenia kodu HTML)

$desc_prefix
Ta zmienna jest prefiksem opisu tego, czego ma używać cel w pliku
„Title[]” oraz w sekcji H1 „PageTop[]”. Wartość domyślna to „Ruch
analiza dla „. (Wariant ze znakiem ucieczki HTML: $html_desc_prefix)

$if_title_desc
To jest opis interfejsu zwykle używanego przez cfgmaker jako część pakietu
zmienna $jeśli_tytuł. Ten ostatni jest używany jako pełny ciąg w dyrektywie „Title[]”.
oraz sekcja H1 w PageTop[].

$if_title_desc jest kontrolowany przez opcję wiersza poleceń --if-opis które pośrednio
kontroluje zawartość $jeśli_tytuł

(Wariant ze znakiem ucieczki HTML: $html_if_title_desc)

Pomoc Funkcje dla Szablony

Istnieją następujące funkcje ułatwiające pisanie szablonów hosta i interfejsu.

html_escape(ciąg)
html_escape() przyjmuje ciąg jako argument i zwraca nowy ciąg, w którym
dokonano następujących podstawień: znaki „<”, „>” i „&” zastąpiono przez
„<”, „>” i „&” oraz znaki nowej linii osadzone w ciągu są poprzedzone znakiem
" " i dołączony znak spacji (znaki nowej linii na końcu łańcucha nie są
wzruszony).

oid_pick($router_connect,$v3opt,"oid1","oid2"...)
Ta funkcja będzie próbowała sondować każdy z określonych oidów, dopóki nie zakończy się sukcesem lub
skończyły się oidy. Zwróci nazwę pierwszego oidu, który zadziałał lub undef jeśli
to się nie udaje

Przykład szablon Akta

Przykład szablonu 1: eliminowanie pojawiania się odrzuconych celów

Ten plik szablonu generuje dokładnie ten sam kod konfiguracyjny dla każdego interfejsu, co cfgmaker
robi to domyślnie, z wyjątkiem tego, że eliminuje wszystkie linie (komentarze oraz
config code) dla interfejsu, jeśli interfejs zostanie odrzucony.

if(nie $problem_lines)
{
$linie_docelowe .= <

Cel[$nazwa_celu]: $if_ref:$router_connect
SetEnv[$target_name]: MRTG_INT_IP="$if_ip" MRTG_INT_DESCR="$if_snmp_descr"
ECHO

if ($ nazwa_katalogu) {
$target_lines .= "Katalog[$target_name]: $directory_name\n";
}

$linie_docelowe .= <
MaxBytes[$nazwa_docelowa]: $if_speed
Tytuł[$target_name]: $html_desc_prefix$html_if_title_desc -- $nazwa systemu
Góra strony [$ nazwa_celu]: $html_desc_prefix$html_if_title_desc -- $nazwa systemu



System:
$systemname w $html_syslocation


Opiekun:
$html_syskontakt


Opis:
$html_if_description


jeśliTyp:
$html_if_type_desc ($if_type_num)


jeśliNazwa:
$html_if_snmp_name

ECHO

$linie_docelowe .= <

Nazwa portu:
$if_port_name

ECHO

$linie_docelowe .= <

Nazwa portu:
$if_pp_nazwa_portu

ECHO

$linie_docelowe .= <

Maksymalna prędkość:
$if_speed_str

ECHO

$linie_docelowe .= <

adres IP:
$if_ip ($if_dns_name)

ECHO

$linie_docelowe .= <


ECHO
} Else {
$head_lines="";
$problem_lines="";
$target_lines="";
$separator_lines="";
}

szablon Przykład 2: Prostsze Wersja of Przykład 1

Przykład 1 miał częściowo zademonstrować, jak dostosować generowanie interfejsu
targets, ale także aby zapewnić wskazówkę, w jaki sposób zmienne są używane w szablonie „domyślnym”.
który można uznać za zwykle używany przez cfgmaker.

Jeśli interesuje Cię tylko najprostszy sposób całkowitego wyeliminowania tych odrzutów
interfejsów, poniższy szablon również wykona zadanie przy użyciu $default_target_lines.

jeśli($jeśli_ok) {
$docelowe_linie = $domyślne_docelowe_linie;
} Else {
$head_lines="";
$problem_lines="";
$target_lines="";
$separator_lines="";
}

szablon Przykład 3: Tworzenie CPU Targets dla Zastępy niebieskie

Poniżej znajduje się przykład szablonu hosta.

$head_lines .= <
#---------------------------------------------------------------- --------------------
ECHO

mój $target_name = $router_name . ".procesor";

$linie_docelowe .= <

YLegend[$target_name]: procentowe obciążenie procesora
Krótka legenda[$target_name]:%
Legenda1[$target_name]: Obciążenie procesora w %
Legenda2[$nazwa_celu]:
Legenda3[$target_name]: Maksymalne zaobserwowane obciążenie procesora
Legenda4[$nazwa_celu]:
LegendaI[$target_name]: Obciążenie procesora:
LegendaO[$nazwa_celu]:
WithPeak[$target_name]: ywm
Maksymalna liczba bajtów [$ nazwa_celu]: 100
Opcje [$target_name]: wzrost, wskaźnik, brak procentu
Tytuł [$target_name]: $router_name obciążenie procesora
Cel[$target_name]: 1.3.6.1.4.1.9.2.1.58.0&1.3.6.1.4.1.9.2.1.58.0:$router_connect
Góra strony [$ nazwa_celu]: $router_name obciążenie procesora



System:
$router_name w $html_syslocation


Opiekun:
$html_syskontakt


Opis:
$html_systemdescr


Ratunek:
PROCESOR.



ECHO

PRZYKŁADY


Pierwszy przykład tworzy plik konfiguracyjny dla router.miejsce.xyz: router ma
Nazwa społeczności publiczny. Interfejsy są identyfikowane na podstawie ich numeru IP. Dwie globalne opcje
zostanie dodany do pliku konfiguracyjnego. Plik konfiguracyjny zostanie przekierowany do mrtg.conf. „\”
znaki na końcu linii oznaczają, że ta komenda powinna być zapisana w jednej linii.

cfgmaker --global "WorkDir: /home/tobi" \
--global "Opcje [_]: wzrost, bity" \
--ifref=ip \
[email chroniony] > mrtg.cfg

Uwaga: jeśli cfgmaker nie znajduje się na twojej ścieżce, ale jesteś w katalogu, w którym znajduje się cfgmaker
zapisany, możesz go uruchomić za pomocą ./cfgmaker

Następny przykład tworzy plik konfiguracyjny dla czterech urządzeń: router1.miejsce.xyz,
router2.miejsce.xyz, przełącznik1.miejsce.xyz i przełącznik2.miejsce.xyz wszystko ze społecznością publiczny.

Dwa routery będą miały --ifref Ustawić opis podczas gdy dwa przełączniki będą używane --ifref
Ustawić Nazwa. Dalsze routery będą używać --ifdesc Ustawić alias i przełącznik1.miejsce.xyz
będzie użyty --ifdesc Ustawić opis podczas gdy przełącznik2.miejsce.xyz posługiwać się Nazwa zamiast.

Na koniec w konfiguracji zostaną wstawione dwie linie opcji: Jedna będzie w pliku
początku, podczas gdy drugi zostanie wstawiony po liniach związanych z dwoma routerami
ale przed tymi liniami związanymi z przełącznikami.

cfgmaker --global "WorkDir: /home/tobi" \
--global "Opcje [_]: wzrost, bity" \
--ifref=opis \
--ifdesc=alias \
[email chroniony] \
[email chroniony] \
--global "Opcje[_]: wzrost" \
--ifref=nazwa \
--ifdesc=opis \
[email chroniony] \
--ifdesc=nazwa \
[email chroniony] > mrtg.cfg

Następny przykład pokazuje, jak używać --wspólnota, --snmp-opcje i --dns-domena
aby uprościć wiersz poleceń. Cały sprzęt będzie używany przez społeczność ukrytego, z wyjątkiem
dla serwera ppp, który używa community dostęp. Wszystkie urządzenia korzystają z następujących opcji SNMP: 1s
Timeout, 1 spróbować ponownie i SNMP wersja 2 (cofnąć się i Port jest nieokreślony, co oznacza, że ​​używają
wartości domyślne). Ponownie wyjątkiem jest serwer ppp, który używa SNMP wersja 1.
Wreszcie cały sprzęt jest częścią domeny miejsce.xyz, z wyjątkiem serwera ppp
który jest częścią domeny zdalne.miejsce.xyz. Zauważ, że to ostatnie osiąga się po prostu przez
określając nazwę serwera ppp, który ma być serwer ppp.zdalny .

cfgmaker --global "WorkDir: /home/tobi" \
--global "Opcje [_]: wzrost, bity" \
--dns-domena=miejsce.xyz \
--community=ukryty \
--snmp-opcje=::1:1::2 \
router1 \
router2 \
router3 \
router4 \
router5 \
przełącznik1 \
przełącznik2 \
przełącznik3 \
przełącznik4 \
przełącznik5 \
przełącznik6 \
przełącznik7 \
[email chroniony]:::::1 > mrtg.cfg

Korzystaj z cfgmaker online za pomocą usług onworks.net


Darmowe serwery i stacje robocze

Pobierz aplikacje Windows i Linux

Komendy systemu Linux

Ad