cfgmaker - מקוון בענן

זהו הפקודה cfgmaker שניתן להפעיל בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות המרובות שלנו, כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

תָכְנִית:

שֵׁם


cfgmaker - יוצר קבצי mrtg.cfg (עבור mrtg-2.17.4)

תַקצִיר


cfgmaker [options] [community@]נתב [[options] [community@]נתב ...]

אפשרויות


--ifref=שם הפניות לממשק לפי שם ממשק (ברירת מחדל)
--ifref=ip ... לפי כתובת IP
--ifref=eth ... לפי מספר Ethernet
--ifref=descr ... לפי תיאור ממשק
--ifref=nr ... לפי מספר ממשק
--ifref=type ... לפי סוג ממשק
אתה יכול גם להשתמש במספר אפשרויות מופרדות בפסיקים,
במקרה זה נעשה שימוש באחד הזמין הראשון:
לְמָשָׁל --ifref=ip,name,nr

--ifdesc=nr תיאור הממשק משתמש במספר ממשק (ברירת מחדל)
--ifdesc=ip ... משתמש בכתובת IP
--ifdesc=eth ... משתמש במספר Ethernet
--ifdesc=descr ... משתמש בתיאור ממשק
--ifdesc=name ... משתמש בשם ממשק
--ifdesc=catname ... משתמש בשם ממשק CatOS
--ifdesc=ppname ... משתמש בשם יציאת דרכון
--ifdesc=alias ... משתמש בכינוי ממשק
--ifdesc=type ... משתמש בסוג ממשק
אתה יכול גם להשתמש במספר אפשרויות מופרדות בפסיקים,
במקרה זה נעשה שימוש באחד הזמין הראשון:
לְמָשָׁל --ifdesc=catname,ppname,descr,כינוי,ip,name,nr

--if-filter=f בדוק כל ממשק מול מסנן f כדי להחליט אם
או לא לכלול את הממשק הזה באוסף.
כרגע f מוערך כביטוי Perl
וערך האמת שלו משמש כדי לדחות או לקבל את
מִמְשָׁק.
(ניסיוני, בפיתוח, עשוי להשתנות)

--if-template=תבנית קובץ
החלף את ערכי היעד הרגילים עבור הממשקים
עם ערך כפי שצוין בתוכן בקובץ
קובץ תבנית. הקובץ אמור להכיל Perl
קוד שיבוצע כדי ליצור את השורות עבור
target בקובץ התצורה.
(ניסיוני, בפיתוח, עשוי להשתנות)

--host-template=תבנית קובץ
בנוסף ליצירת יעדים עבור ממשקים של מארח
צור גם יעדים עבור המארח עצמו כפי שצוין
לפי התוכן בקובץ templatefile. הקובץ הוא
אמור להכיל קוד Perl שיבוצע כדי ליצור
הקווים עבור היעדים הקשורים למארח (כגון CPU,
מדידות זמן תגובה של פינג וכו') בתצורה-
קובץ uration.
(ניסיוני, בפיתוח, עשוי להשתנות)

--global "x: a" הוסף ערכי תצורה גלובליים

--no-down אל תסתכל על סטטוס admin או opr של ממשקים

--show-op-down מציגים ממשקים שנמצאים במצב פעיל

--zero-speed=spd השתמש במהירות זו בסיביות לשנייה כממשק
מהירות עבור כל הממשקים שמחזירים מהירות של 0
דרך ifSpeed/ifHighSpeed. 100Mbps = 100000000

--subdirs=format נותנים לכל נתב ספריית משנה משלו, ונותנים שם לכל נתב
"פורמט", שבו יהיו HOSTNAME ו-SNMPNAME
מוחלפים בערכים של אותם פריטים -- למשל,
--subdirs=HOSTNAME או --subdirs="HOSTNAME (SNMPNAME)"

--noreversedns לא הופכים מספרי ip של חיפוש הפוך

--community=cmty הגדר את מחרוזת ברירת המחדל של הקהילה ל-"cmty" במקום
"פּוּמְבֵּי".

--enable-ipv6 הפעל תמיכה ב-IPv6, אם הספריות הנדרשות
מתנה. יש לצרף כתובות IPv6 מספריות
בסוגריים מרובעים, למשל. public@[2001:760:4::1]:161

--use-16bit השתמש במזהי בקשת SNMP של 16bit כדי לבצע שאילתות בכל הנתבים.

--snmp-options=:[][:[][:[][:[][:]]]]

ציין אפשרויות ברירת מחדל של SNMP שיוספו לכולם
נתבים הבאים. שדות בודדים יכולים להיות ריקים.
נתבים הבאים עשויים לעקוף חלק או את כולם
אפשרויות שניתנו ל --snmp-options.

--dns-domain=domain
מציין תחום שיש להוסיף לשם כולם
נתבים הבאים.

--nointerfaces אל תיצור שום שורות תצורה עבור ממשקים,
דלג על השלב של איסוף מידע ממשק ו
אל תפעיל שום קוד תבנית ממשק.

--interfaces צור קווי תצורה עבור ממשקים (זהו
בְּרִירַת מֶחדָל). המטרה העיקרית של אפשרות זו היא לשלול
an --nointerfaces המופיע קודם לכן בשורת הפקודה.

--עזרה הודעת עזרה קצרה
--מן תיעוד מלא
--version הדפס את הגרסה של cfgmaker

--output=קובץ פלט שם הקובץ ברירת המחדל היא STDOUT

תיאור


Cfgmaker יוצר קבצי תצורה של MRTG המבוססים על מידע שנשלף מנתב או
מכשיר SNMP אחר הניתן לניהול.

[קהילה@]נתב

הקהילה הוא שם הקהילה של המכשיר שברצונך ליצור עבורו תצורה. אם
לא צוין, ברירת המחדל היא 'ציבורי'; אולי תרצה לנסות את זה קודם אם לא
לדעת את שם הקהילה של מכשיר. אם אתה משתמש בשם הקהילה הלא נכון, תעשה זאת
אין תגובה מהמכשיר.

נתב הוא שם ה-DNS או מספר ה-IP של התקן הניתן לניהול SNMP. בעקבות השם
אתה יכול לציין 6 אפשרויות נוספות מופרדות בנקודתיים. התחביר המלא נראה כך:

נתב[:[מוכן][:[tmout][:[רטר][:[התרחק][:ל]]]]]

עניין מיוחד עשוי להיות הפרמטר האחרון, ל. אם תגדיר את זה ל'2' אז שלך
ההתקן יישאל עם בקשות SNMP גרסה 2. זה מאפשר לך לבצע סקר 64 סיביות
מונים תנועה במכשיר וכך יעבדו הרבה יותר טוב עם ממשקים מהירים (לא
עוד חפיפת מונה). שימו לב שהסדר שבו מצוינים הנתבים ב-
שורת הפקודה חשובה שכן נעשה שימוש באותו סדר כאשר נוצר קובץ התצורה.
לנתב שצוין הראשון יש את קווי התצורה שלו שנוצרו תחילה, ואחריו את
קווים השייכים לנתב הבא וכן הלאה.

שימו לב שהשורה הראשונה של קובץ ה-cfg שנוצר תכיל את כל שורת הפקודה
אפשרויות שבהן השתמשת ליצירתו. זאת על מנת לאפשר את ה'התחדשות' הקלה במקרה
אתה רוצה להוסיף מארחים חדשים או לעשות שינוי גלובלי אחר.

תְצוּרָה
חוץ מ ה --תְפוּקָה ו --גלוֹבָּלִי אפשרויות, כל האפשרויות משפיעות רק על הנתבים
עוקב אחריהם בשורת הפקודה. אם אפשרות שצוינה קודם לכן בשורת הפקודה
מופיע שוב מאוחר יותר בשורת הפקודה עם ערך אחר, הערך החדש מחליף את הישן
ערך בכל הנוגע לנתבים הנותרים. בדרך זו ניתן להתאים אפשרויות
קבוצות של נתבים או עבור נתבים בודדים.

לִרְאוֹת --תְפוּקָה ו --גלוֹבָּלִי איך ההתנהגות שלהם מושפעת מאיפה או כמה פעמים
הם מופיעים בשורת הפקודה.

ראה דוגמאות להלן כיצד להגדיר אפשרות אחרת עבור מספר נתבים.

- עזרה
הדפס הודעת עזרה קצרה וצא.

--איש
מדפיס את הדף הידני ויוצא.

--גִרְסָה
הדפס את הגרסה של cfgmaker. זה אמור להתאים לגרסה של MRTG שעבורה התצורה
נוצרים קבצים.

--iref nr|ip|האת|מתאר|שם
בחר את שיטת זיהוי הממשק. ברירת המחדל היא nr שמזהה את הנתב
ממשקים לפי מספרם. למרבה הצער, ערכת מספור הממשק ב-SNMP
עץ יכול להשתנות. חלק מהנתבים משנים את המספור שלהם כאשר מוסיפים ממשקים חדשים,
אחרים משנים את המספור שלהם כל ירח מלא רק בשביל הכיף.

כדי לעקוף את הבעיה העצובה הזו, MRTG יכול לזהות ממשקים לפי 4 מאפיינים אחרים.
אף אחד מאלה לא עובד עבור כל הממשקים, אבל אתה אמור להיות מסוגל למצוא אחד שכן
בסדר בשבילך. שים לב שבעיקר כתובות Ethernet יכולות להיות בעייתיות כמו חלקן
לנתבים יש את אותה כתובת אתרנט ברוב כרטיסי הממשק שלהם.

בחר ip לזהות את הממשק לפי מספר ה-IP שלו. להשתמש האת להשתמש ב-ethernet
כתובת לזיהוי. להשתמש מתאר כדי להשתמש בתיאור הממשק. או להשתמש שם ל
השתמש בשם הממשק.

אתה יכול לציין מספר מאפיינים אם תרצה, מופרדים בפסיקים. במקרה הזה,
cfgmaker ישתמש בפריט הראשון ברשימה שיכול לספק זיהוי ייחודי.
זה מאפשר לך לציין, למשל, להשתמש בכתובת IP ולהשתמש ב-ifName אם זה
לא מוגדר:
--ifref ip,name

אם השיטה שבחרת אינה מאפשרת זיהוי ממשק ייחודי במכשיר שאתה
שואלים, cfgmaker יספר לך על זה.

--ifdesc nr|ip|האת|מתאר|שם|סוג|כינוי
בחר במה להשתמש כתיאור הממשק. התיאור מופיע ב
המאפיין "כותרת[]" עבור היעד וכן את כותרת הטקסט בקוד ה-HTML
מוגדר ב-"PageTop[] של היעד". ברירת המחדל היא להשתמש nr שזה רק הממשק
מספר שלא תמיד שימושי לצופה בגרפים.

ישנם 6 נכסים נוספים שניתן להשתמש בהם. להשתמש ip אם אתה רוצה להשתמש ב
כתובת ה-IP של הממשק. להשתמש האת אם ברצונך להשתמש בכתובת ה-ethernet של הממשק.
אם אתה רוצה תיאור טוב יותר, אתה יכול להשתמש בכל אחד מהם מתאר, שם or כינוי. בְּדִיוּק
מה שכל אחד מאלה עושה משתנה בין ציוד שונה, אז אולי תצטרך
לְנַסוֹת. לדוגמה, עבור ממשק טורי על נתב סיסקו המריץ IOS באמצעות
שם עלול לגרום לכך ש-"S0" הוא תיאור הממשק, מתאר עלול לגרום
"Serial0" ו כינוי עלול לגרום ל-"קישור ל-HQ" (בתנאי שזה מה שמשמש בתור
ה"תיאור" של הממשק בתצורת הנתב).

לבסוף, אם אתה רוצה לתאר את הממשק לפי ה-Btype שלו (כלומר "ethernetCSMA",
"propPointtoPoint" וכו') אתה יכול להשתמש סוג.

אתה יכול לציין מספר מאפיינים אם תרצה, מופרדים בפסיקים. במקרה הזה,
cfgmaker ישתמש בפריט הראשון ברשימה הזמין עבור ממשק זה.
זה מאפשר לך לציין, למשל, להשתמש בכל אחד מהכינויים השונים לפי הסדר
של העדפה.

--אם-פילטר 'ביטוי מסנן'
קודם כל, זה נמצא בפיתוח מסוים והוא ניסיוני.

השתמש בזה אם אתה רוצה לקבל שליטה טובה יותר על אילו ממשקים נכללים
את התצורה. ה ביטוי מסנן מוערך כקטע של קוד Perl והוא
צפוי להחזיר ערך אמת. אם נכון, כלול את הממשק ואם לא נכון,
לא לכלול את הממשק.

לדיון נוסף על אופן הפעולה של מסננים אלה, עיין בסעיף "פרטים על
מסננים" למטה.

--אם-תבנית תבנית-קובץ
קודם כל, זה נמצא בפיתוח מסוים והוא ניסיוני.

השתמש בזה אם אתה רוצה לשלוט איך הקו עבור כל יעד צריך להיראות ב-
קובץ תצורה. תוכן הקובץ תבנית-קובץ יוערך כא
תוכנית Perl אשר יוצרת את השורות באמצעות משתנים מסוימים עבור קלט ופלט.

לדיון נוסף על אופן הפעולה של תבניות אלו, עיין בסעיף "פרטים על
לוחות נושא" למטה.

--תבנית-מארח תבנית-קובץ
קודם כל, זה נמצא בפיתוח מסוים והוא ניסיוני.

השתמש בזה אם אתה רוצה שיהיו לך כמה יעדים נוספים הקשורים למארח עצמו, כגון מעבד
ניצול, זמן תגובה של פינג למארח, מספר מודמים תפוסים וכו'. התוכן
של הקובץ תבנית-קובץ יוערך פעם אחת לכל מארח כתוכנית Perl אשר
יוצר את השורות באמצעות משתנים מסוימים עבור קלט ופלט.

לדיון נוסף על אופן הפעולה של תבניות אלו, עיין בסעיף "פרטים על
תבניות" למטה.

-- קהילה קהילה-מחרוזת
השתמש בזה כדי להגדיר את הקהילה עבור הנתבים הבאים בשורת הפקודה ל
קהילה-מחרוזת. נתבים בודדים עשויים לעקוף מחרוזת קהילה זו באמצעות שימוש
התחביר קהילה@נתב.

--enable-ipv6
אפשרות זו מאפשרת תמיכה ב-IPv6. זה דורש את מודולי ה-perl המתאימים; אם הם
לא נמצאו אז IPv6 מושבת (ראה תיעוד ipv6).

cfgmaker ישתמש ב-IPv6 או IPv4 בהתאם ליעד. אם המטרה היא מספרית
כתובת, הפרוטוקול תלוי בסוג הכתובת. אם היעד הוא שם מארח,
cfgmaker ינסה לפתור את השם תחילה לכתובת IPv6 ולאחר מכן לכתובת IPv4
כתובת.

יש לציין כתובות מספריות IPv6 בין סוגריים מרובעים.

לדוגמה:

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

אם ליעד יש גם כתובת IPv6 וגם כתובת IPv4 עם אותו שם מארח,
cfgmaker שואל תחילה את היעד באמצעות IPv6 ונופל בחזרה ל-IPv4 אם הוא נכשל. זֶה
שימושי עבור יעדים שאינם תומכים ב-SNMP מעל IPv6.

--השתמש ב-16bit
אפשרות זו מאלצת את השימוש במזהי בקשת SNMP של 16 סיביות. כמה סוכני SNMP שבורים לא
קבל מזהי בקשות של 32 סיביות. נסה להימנע מהאפשרות הזו ככל האפשר, תתלונן בפני
הספק הסוכן שלך במקום.

--snmp-אפשרויות :[נמל][:[פסק זמן][:[מנסה שוב][:[התרחק][:גרסה]]]]
השתמש בזה כדי להגדיר את אפשרויות ברירת המחדל של SNMP עבור כל הנתבים הבאים בפקודה
קַו. ניתן להשמיט ערכים בודדים כמו גם נקודתיים נגררים. ציין זאת
נתבים עשויים לעקוף ערכים בודדים (או כולם) שצוינו על ידי --snmp-אפשרויות באמצעות
התחביר

נתב[:[נמל][:[פסק זמן][:[מנסה שוב][:[התרחק][:גרסה]]]]]

--גלוֹבָּלִי "bla: א ב ג"
השתמש בזה כדי להוסיף אפשרויות גלובליות לקובץ התצורה שנוצר. אתה יכול להתקשר --גלוֹבָּלִי
מספר פעמים כדי להוסיף אפשרויות מרובות. השורה תופיע רק בתצורה
לפני התצורה של הנתב הבא המופיעה בשורת הפקודה.

--global "workdir: /home/mrtg"

אם אתה רוצה כמה אפשרויות ברירת מחדל, אולי תרצה לשים

--גלובל "אפשרויות[_]: growright,bits"

מפרט --גלוֹבָּלִי לאחר שהנתב האחרון בשורת הפקודה יצור שורה ב
קובץ התצורה שיופיע אחרי כל הנתבים.

--noreversedns
אל תנסה לבצע חיפוש הפוך מספרי IP ... חובה עבור סביבות ללא DNS.

--ללא למטה
בדרך כלל cfgmaker לא יכלול ממשקים המסומנים אלא
מנהלית ותפעולית UP. עם המתג הזה אתה מקבל את כולם.

--show-op-down
כלול ממשקים מושבתים באופן תפעולי.

- מהירות אפס מְהִירוּת
הקצה מהירות זו בסיביות לשנייה לכל הממשקים שמחזירים 0 עבור ifSpeed ​​ו
ifHighSpeed. מתגים מסוימים, בעיקר ציוד היציקה, מחזירים מהירות של אפס עבור
כמה ממשקים. לדוגמה, כדי שכל הממשקים המדווחים על אפס מוגדרים ל-100Mbps,
השתמש ב--zero-speed=100000000.

--כתובות משנה פוּרמָט
תן לכל נתב ספריית משנה משלו עבור קבצי ה-HTML והגרפיקה (או .rrd). ה
שם הספרייה הוא הנתון פוּרמָט מחרוזת עם כמה החלפות דפוס. ה
המחרוזת "HOSTNAME" תוחלף בשם המארח של הנתב (עם זאת
ציינו זאת ב- cfgmaker שורת הפקודה -- זה עשוי להיות שם מארח בפועל או רק IP
כתובת), ו-"SNMPNAME" יוחלף ברעיון של המכשיר של השם שלו (ה
אותו שם שמופיע בצד ימין של שורות "כותרת"). למשל, שיחה
כמו:

cfgmaker --subdirs=HOSTNAME__SNMPNAME public@10.10.0.18

יביא לכך שיצירת השורות ייראה משהו כמו:

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

--תְפוּקָה פילה
כתוב את הפלט מ cfgmaker לתוך הקובץ פילה. ברירת המחדל היא להשתמש ב-"STDOUT".
--תְפוּקָה צפוי להופיע פעם אחת בלבד בשורת הפקודה. אם משתמשים בו מספר פעמים,
הקובץ שצוין על ידי האחרון --תְפוּקָה יהיה בשימוש.

--ללא ממשקים
אל תיצור קווי תצורה עבור ממשקים.

זה גורם ל-cfgmaker לדלג על כל השלבים הקשורים לממשקים, מה שאומר שזה לא יצליח
כל סקר של הנתב כדי לאחזר מידע ממשק שמאיץ את
ביצוע של cfgmaker והוא גם לא יפעיל שום תבניות ממשק.

--ממשקים
זה גורם ל-cfgmaker ליצור קווי תצורה עבור ממשקים (ברירת המחדל
התנהגות).

השימוש העיקרי באפשרות זו הוא לשלול --nointerfaces המופיע מוקדם יותר ב-
שורת הפקודה.

SNMP V3 אפשרויות
Cfgmaker תומך ב-SNMP V3 באמצעות רשת: SNMP מודול perl. ישנם פרמטרים אופציונליים
משפיע על פעולת SNMP.

--enablesnmpv3 {כן|לא}
השמיים --enablesnmpv3 option הוא דגל אופציונלי לבדיקת נוכחות ה-
נטו::SNMP ספריות. Cfgmaker ינסה לקבוע אם הדגל הזה נדרש ו
יגדיר את הערכים באופן אוטומטי.

SNMPv3 טיעונים

הקשר SNMP הוא אוסף של מידע ניהולי הנגיש על ידי ישות SNMP. א
פריט מידע ניהולי עשוי להתקיים ביותר מהקשר אחד וביישות SNMP
יש פוטנציאל גישה להקשרים רבים. השילוב של contextEngineID ו-a
contextName מזהה באופן חד משמעי הקשר בתוך תחום ניהולי. ב
הודעת SNMPv3, contextEngineID ו-contextName כלולים כחלק מה-scopedPDU.
כל השיטות היוצרות הודעת SNMP לוקחות באופן אופציונלי א --contextengineid ו
--שם הקשר ארגומנט להגדרת שדות אלה.

מזהה מנוע הקשר
השמיים --contextengineid ארגומנט מצפה למחרוזת הקסדצימלית המייצגת את הרצוי
contextEngineID. המחרוזת חייבת להיות באורך 10 עד 64 תווים (5 עד 32 אוקטטים) והיא יכולה
קידומת "0x" אופציונלית. פעם ה --contextengineid מצוין שהוא נשאר
עם האובייקט עד שהוא ישונה שוב או לאפס לברירת המחדל על ידי העברת ה-
ערך לא מוגדר. כברירת מחדל, ה-contextEngineID מוגדר כך שיתאים ל-
AuthoritativeEngineID של מנוע ה-SNMP הסמכותי.

שם הקשר
ה-contextName מועבר כמחרוזת שצריכה להיות באורך של 0 עד 32 אוקטטים באמצעות ה-
--שם הקשר טַעֲנָה. ה-contextName נשאר עם האובייקט עד שהוא משתנה.
ברירת המחדל של contextName היא מחרוזת ריקה המייצגת את ההקשר "ברירת מחדל".

מבוסס משתמש אבטחה מספר סימוכין טיעונים

מודל האבטחה מבוסס המשתמש (USM) המשמש את SNMPv3 מחייב ש-securityName יהיה
שצוין באמצעות --שם משתמש טַעֲנָה. יצירת אובייקט Net::SNMP עם ה-
גרסה שהוגדרה ל-SNMPv3 תיכשל אם --שם משתמש הטיעון אינו קיים. ה --שם משתמש
ארגומנט מצפה למחרוזת באורך 1 עד 32 אוקטטים.

רמות שונות של אבטחה מותרות על ידי מודל האבטחה מבוסס המשתמש אשר הכתובת
בעיות אימות ופרטיות. יעד SNMPv3 יגזור את רמת האבטחה
(SecurityLevel) בהתבסס על אילו מהארגומנטים הבאים מצוינים.

כברירת מחדל, ההנחה היא רמת אבטחה של 'noAuthNoPriv'. אם ה --מפתח אימות or
--authpassword ארגומנטים מצוינים, ה-securityLevel הופך ל-'authNoPriv'. ה
--authpassword הארגומנט מצפה למחרוזת שאורכה לפחות 1 אוקטטה. אופציונלי,
מה היא --מפתח אימות ניתן להשתמש בארגומנט כך שסיסמת טקסט רגיל לא חייבת להיות
שצוין בתסריט. ה --מפתח אימות ארגומנט מצפה למחרוזת הקסדצימלית המופקת על ידי
לוקליזציה של הסיסמה עם ה-autoritativeEngineID עבור היעד הספציפי
התקן. ניתן להשתמש בכלי השירות "snmpkey" הכלולה בהפצת Net::SNMP
צור את המחרוזת הקסדצימלית (ראה snmpkey).

שני אלגוריתמי גיבוב שונים מוגדרים על ידי SNMPv3 אשר יכול לשמש את האבטחה
דגם לאימות. אלגוריתמים אלה הם HMAC-MD5-96 "MD5" (RFC 1321) ו
HMAC-SHA-96 "SHA-1" (NIST FIPS PUB 180-1). אלגוריתם ברירת המחדל בשימוש המודול הוא
HMAC-MD5-96. ניתן לשנות התנהגות זו על ידי שימוש ב- --authprotocol טַעֲנָה. זֶה
ארגומנט מצפה שהמחרוזת 'md5' או 'sha' תועבר כדי לשנות את ה-hash
אלגוריתם.

על ידי ציון הטיעונים --privkey or --privacypassword רמת האבטחה המשויכת אליה
האובייקט הופך ל-'authPriv'. על פי SNMPv3, פרטיות מחייבת שימוש ב
אימות. לכן, אם מתקיים אחד משני הטיעונים הללו וה- --מפתח אימות
or --authpassword חסרים ארגומנטים, יצירת האובייקט נכשלת. ה --privkey
ו --privacypassword הטיעונים מצפים לאותו קלט כמו ה- --מפתח אימות ו --authpassword
טיעונים בהתאמה.

מודל האבטחה מבוסס המשתמש המתואר ב-RFC 3414 מגדיר פרוטוקול הצפנה יחיד
לשמש לפרטיות. פרוטוקול זה, CBC-DES "DES" (NIST FIPS PUB 46-1), משמש על ידי
ברירת המחדל או אם המחרוזת 'des' מועברת ל- --פרוטוקול פרטי טַעֲנָה. על ידי עבודה עם
קונסורציום אפשרויות האבטחה המורחבות http://www.snmp.com/eso/, גם המודול
תומך בפרוטוקולים נוספים אשר הוגדרו בטיוטה מפרטים. הטיוטה
http://www.snmp.com/eso/draft-reeder-snmpv3-usm-3desede-00.txt מגדיר את התמיכה של
CBC-3DES-EDE "Triple-DES" (NIST FIPS 46-3) במודל האבטחה מבוסס המשתמש. זֶה
ניתן לבחור פרוטוקול באמצעות --פרוטוקול פרטי ארגומנט עם המחרוזת '3desede'. ה
טיוטה http://www.snmp.com/eso/draft-blumenthal-aes-usm-04.txt מתאר את השימוש ב
CFB128-AES-128/192/256 "AES" (NIST FIPS PUB 197) ב-USM. שלושת הצפנת AES
ניתן לבחור פרוטוקולים, המובדלים על ידי גדלי המפתח שלהם, על ידי העברת 'aescfb128',
'aescfb192', או 'aescfb256' ל- -פרוטוקול פרטי ויכוח.

פרטים on מסנן
מטרת המסננים היא להחליט לאילו ממשקים לקבל ולאיזה ממשקים
לִדחוֹת. החלטה זו נעשית עבור כל ממשק על ידי הערכת ביטוי המסנן כ-a
חתיכת קוד Perl וחוקרת את תוצאת ההערכה. אם זה נכון, קבל את
ממשק אחרת לדחות אותו.

כשאתה עובד עם מסננים, זכור שלפרל יש רעיון משלו מה אמת ומה שקר
הוא. המחרוזת הריקה "" והמחרוזת "0" הן שקר, כל המחרוזות האחרות נכונות. זֶה
עוד מרמז שכל ערך שלם של 0 הוא שקר, כמו גם כל ערך undef. זה גם
מרמז שכל ההפניות נחשבות נכונות.

מכיוון שהמסנן מוערך כביטוי Perl, מספר מבנים שימושיים ב-Perl
ראוי לציין:

ניתן לקבץ ביטויים באמצעות סוגריים "()". ניתן לשלב ביטויים
באמצעות אופרטורים בוליאניים כגון:

"ו"(מקביל ל"&&")
"ו" בוליאני של שני הביטויים, נכון רק אם שני הביטויים נכונים.
דוגמא: ביטוי 1 ו ביטוי 2

"or"(מקביל ל"||")
"או" בוליאני של שני הביטויים, נכון אם אחד הביטויים או שניהם נכונים.
דוגמא: ביטוי 1 or ביטוי 2

"לֹא"(מקביל ל"!")
שלילה בוליאנית של ביטוי בודד. דוגמא: לֹא ביטוי . עוד
דוּגמָה: !ביטוי

(לפרטים נוספים על זה אני ממליץ על ספר על פרל)

מוגדר מראש סינון משתנים

כדי להקל, ישנם מספר ערכים מוגדרים מראש לשימוש במסנן.
שים לב שמשתנים אלה זמינים גם כאשר ממשקי תבניות מוערכים (אבל
לא תבניות מארח).

אזהרה: כל שמות המשתנים הללו מתחילים בסימן דולר ($), שהוא תחבירי
דרישה למשתנים סקלרים ב- Perl. הסכנה כאן היא שהדולר בהרבה
shells הוא תו פעיל (משמש לעתים קרובות למשתני מעטפת בדיוק כמו ב-Perl
משתנים) לכן חשוב לוודא שביטוי Perl אינו מוערך על ידי ה-
מעטפת שורת הפקודה כקוד מעטפת לפני שהיא מועברת ל-cfgmaker בתור שורת פקודה
טיעונים. בקונכיות כמו קונכיית בורן, קונכיית קש או קונכיות בש, מניחים את כולו
ביטוי בתוך ציטוטים בודדים ימנע הערכה מקרית כזו:

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

$if_type
זהו מספר שלם המציין את סוג הממשק לפי תקני SNMP וכמו
דווח על ידי המכשיר הנשאל. רשימה מלאה של סוגי ממשקים תהיה
לא מעשי עבור מסמך זה , אך להלן מספר משתנים מוגדרים מראש.
בדרך כלל, cfgmaker מכניס ל-PageTop של היעד את ערך ה-iftype הזה בתוך הפרתזה
אחרי שם סוג הממשק. (למשל "propPointToPointSerial (22)").

להלן רשימה של כמה מסוגי הממשק הנפוצים ביותר לפי מספר:

6 ethernetCsmacd
7 iso88023Csmacd
9 iso88025TokenRing
15 fddi
19 E1
20 בסיסי ISDN
21 ראשי ISDN
22 propPointToPointSerial
23 ppp
24 תוכנות Loopback
30 ds3
ממסר 32 פריימים
33 rs232
37 atm
סונט 39
44 frameRelayService
46 חסי
49 aal5
53 propVirtual
62 Ethernet מהיר (100BaseT)
63 ISDN & X.25
69 Full Duplex Fast Ethernet (100BaseFX)
לולאת מנויים דיגיטלית אסימטרית 94 (ADSL)
117 Gigabit Ethernet
ממשק משנה 134 ATM

$default
נכון אם ורק אם cfgmaker בדרך כלל צריך לקבל את הממשק מבוסס על
ממשק מצב ניהולי ותפעולי (לוקח את הדגלים --ללא למטה ו
--show-op-down בחשבון) וזה סוג (ועוד כמה דברים).

$default_ifstate
נכון אם ורק אם cfgmaker היה מקבל את הממשק על בסיס זה
מדינות מבצעיות ומנהליות (גם תוך התחשבות בנוכחות של
דגלים --ללא למטה ו --show-op-down).

$default_iftype
נכון אם ורק אם cfgmaker היה מקבל את הממשק על סמך הסוג שלו (ו
כמה פרטים ספציפיים לסוגים בנוסף).

$if_admin
נכון אם ורק אם הממשק נמצא במצב למעלה אדמיניסטרטיבי.

$if_oper
נכון אם ורק אם הממשק במצב למעלה תפעולי.

מספר משתנים מוגדרים מראש גם כדי להחליט בקלות אם ממשק שייך ל- a
קטגוריה מסוימת או לא. להלן כל המשתנים הרשומים יחד עם אילו if_type
מספרים שכל משתנה יהיה נכון עבורם. שימו לב שמשתנים מסוימים מתייחסים למשתנים אחרים
גם כן.

$if_is_ethernet
נכון עבור ממשקי Ethernet (nr 6, 7, 26, 62, 69 ו-117).

$if_is_isdn
נכון לסוגי ממשק ISDN שונים (nr 20, 21, 63, 75, 76 ו-77)

$if_is_dialup
נכון עבור ממשקי חיוג כגון PPP וכן ISDN. (מספר 23, 81, 82 ו-108 אינץ'
תוספת למספרים של $if_is_isdn).

$if_is_atm
נכון לסוגי ממשקים שונים הקשורים לכספומט (nr 37, 49, 107, 105, 106, 114 ו
134).

$if_is_wan
נכון עבור ממשקי WAN נקודה לנקודה, ממסר מסגרת ומהירות סידורית גבוהה (
22,32,44,46)

$if_is_lan
נכון עבור ממשקי LAN (8, 9, 11, 15, 26, 55, 59, 60 ו-115 בנוסף ל-
מספרים של $if_is_ethernet).

$if_is_dsl
נכון עבור ADSL, RDSL, HDSL ו-SDSL (nr 94, 95, 96, 97)

$if_is_loopback
נכון עבור ממשקי לולאה של תוכנה (nr 24)

$if_is_ciscovlan
נכון עבור ממשקי Cisco VLAN (מתממשקים עם המילה Vlan או VLAN בם
ifdescs)

$if_vlan_id
מחזירה את מזהה ה-vlan המשויך ליציאה ספציפית במתגי Cisco Catalyst תחת
גם Catalyst OS וגם IOS, ומתגי 3Com. אם זה לא ממשק vlan, יהיה
להחזיר undef.

$if_cisco_trunk
מחזירה את מצב השלוחה של יציאה ספציפית במתגי Cisco Catalyst מתחת לשניהם
Catalyst OS ו-IOS. מחזירה "1" אם הממשק הוא טראנק, חוץ מזה.

$if_MTU
מחזירה את יחידת ההעברה המקסימלית המשויכת ליציאה ספציפית.

חוץ מזה, אתה יכול גם להשתמש במשתנים המוגדרים לתבניות למטה. בהמשך, הכל
המשתנים הזמינים ב-cfgmaker עומדים לרשות הסקריפטים גם אם השימוש בהם
תכונות לא מעודדות. יותר "קיצורי דרך" בצורה של משתנים ופונקציות יהיו
זמין בעתיד במקום זאת.

דוגמאות on מסנן

המסנן הבא לא ישפיע על אילו ממשקים ייכללו או לא ייכללו, הוא כן ישפיע
לגרום ל-cfgmaker להתנהג כרגיל.

'--if-filter=$default'

המסנן הבא יגרום ל-cfgmaker לא לכלול ממשקי PPP (23):

'--if-filter=$default && $if_type!=23'

המסנן הבא יגרום ל-cfgmaker להתנהג כרגיל פרט לכך שהוא ישקול את
מצב תפעולי של ממשק לא רלוונטי אבל עדיין דוחה את כל הממשקים שהם
ירידה מנהלית.

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

פרטים on תבניות
התוכן של קבצי התבניות מוערך כתוכנית Perl. מספר או פרל
משתנים זמינים לקריאה של התוכנית ואחרים משמשים לכתיבה.

מכיוון שללא מעט מהמשתנים המוגדרים מראש יש ערכים שאמורים לשמש בהם
קוד HTML לחלק מהם יש גרסה "בריחה מ-HTML", למשל $html_syslocation הוא ה-HTML
וריאנט בריחה של $syslocation. ה-HTML escape פירושו שהתווים "" ו-"&"
מוחלפים ב-"<", ">" ו-"&" וכי שורות חדשות המוטבעות במחרוזת הן
מונח לפני "" ומצורף עם תו רווח (אם שורה חדשה היא האחרונה ב-
חוט לא נוגעים בו).

כתוב תבנית משתנים

אלו הם המשתנים הזמינים לאחסון שורות התצורה. חלקם כן
אתחול לפני ההערכה של התבנית, אבל תוכן כזה הוא בדרך כלל הערות
להכללה בקובץ התצורה הסופי, כך שהמשתנים הללו עשויים להיות מאופסים ל-
מחרוזת ריקה בקוד התבנית כדי לבטל את ההערות. ההפך הוא גם
אפשרי, התוכן של משתנים אלה עשוי להיות מורחב עם מידע נוסף עבור
סיבות שונות כמו איתור באגים וכו'.

לאחר הערכה של התבנית, קורה הדבר הבא: אם התבנית היא א
תבנית הממשק והממשק בפועל מסיבה כלשהי נדחתה ולכן צריך
יש להעיר את כל השורות במשתנה $target_lines הופכים לתגובות על ידי
הוספת סימן גיבוב ("#") בתחילתם. ואז כל המשתנים $head_lines,
$problem_lines , $target_lines ו $separator_lines שרשרים יחד כדי ליצור את
שורות להוספה לקובץ התצורה.

$target_lines
משתנה זה הוא מציין המיקום של קווי התצורה שנוצרו על ידי התבנית.
$target_lines מוגדר מראש להיות ריק כאשר קוד התבנית מוערך.

$head_lines
משתנה זה נועד להיות מציין המיקום עבור שורת ההערה המופיעה רק
לפני היעד בקובץ התצורה. הוא מאותחל עם שורת ההערה הזו
לפני ההערכה של קוד התבנית ואם התבנית לא משתנה
$head_lines במהלך הערכה, ההערה תיראה כרגיל בקובץ התצורה.

$problem_lines
משתנה זה נועד להיות ה-Placholder עבור שורות ההערות המתארות כל
בעיות שאולי נתקלו בהן בעת ​​ניסיון להוסיף את המטרה לתוך
תְצוּרָה. עבור תבניות מארח זה בדרך כלל לא בשימוש ועבור אלה כן
מוגדר מראש כמחרוזת הריקה. לתבניות ממשק $problem_lines מוגדר מראש
עם הערות תיאור השגיאה שבהן cfgmaker בדרך כלל היה משתמש לדחיית
ממשקים או כמחרוזת ריקה עבור ממשקים מקובלים.

אפשר לבדוק נגד $problem_lines כדי לברר אם יהיה ממשק
נכלל או נדחה אבל זה לא מומלץ. מבחן נגד $if_בסדר במקום.

$separator_lines
משתנה זה הוא מציין המיקום עבור המחרוזת לשימוש כמפריד בין
קוד עבור יעדים בודדים. התוכן של משתנה זה מוצב אחרי כל יעד
(כך שהקווים יופיעו גם לאחר סיום המטרה האחרונה בתצורה).

מוגדר מראש תבנית משתנים

כל המשתנים להלן זמינים לשימוש בתבניות ממשק. עבור תבניות מארח,
רק אלה המפורטים תחת "משתני מארח ומערכת" זמינים.

עבור תבניות ממשק המשתנים המפורטים תחת "משתני סינון מוגדרים מראש" הם גם
זמין.

מארח ו מערכת משתנים

$router_name
זהו השם המלא של הנתב. זה מושפע מהדברים הבאים
פריטים בשורת הפקודה: שם הנתב עצמו ו --dns-domain.

$router_connect
זוהי מחרוזת ההתייחסות לנתב הנשאל. זה בטופס
community@router אולי ואחריו כמה אפשרויות snmp. זה מושפע מה-
הפריטים הבאים בשורת הפקודה: שם הנתב עצמו, -- קהילה,
--snmp-אפשרויות ו --dns-domain. (אין גרסה עם בריחה HTML זמינה)

$directory_name
משתנה זה צריך להכיל את שם הספרייה כפי ש-cfgmaker ישתמש בדרך כלל בתור
ערך עבור ההנחיה "Directory[]". הערך נקבע על ידי ה --כתובות משנה
אפשרות שורת הפקודה. אם --כתובות משנה לא מצוין $directory_name יהיה הריק
חוּט. (אין גרסה עם בריחה HTML זמינה)

$syscontact
משתנה זה הוא ערך SNMP sysContact של הנתב. (גרסה בריחה של HTML:
$html_syscontact)

$ sysname
משתנה זה הוא ערך SNMP sysName של הנתב. (לא זמינה וריאנט בריחה HTML)

$syslocation
משתנה זה הוא ערך SNMP sysLocation של הנתב. (גרסה בריחה של HTML:
$html_syslocation)

$sysdescr
משתנה זה הוא ערך ה-SNMP sysDescr של הנתב. זה בדרך כלל לא בשימוש על ידי
cfgmaker אבל עשוי להיות שימושי בתבנית. (גרסה בריחה של HTML: $html_sysdescr)

מִמְשָׁק יעד מוצרים מקושרים משתנים

$target_name
זה מה ש-cfgmaker בדרך כלל ישתמש בתור שם היעד. המטרה
שם הוא מה שנמצא בסוגריים המרובעים, "[]", עבור הנחיות יעד.
(אין גרסה עם בריחה HTML זמינה)

$if_ref
זו מחרוזת ההתייחסות לממשק. זה צפוי לשמש ב
הנחיית "Target[xyz]" כדי להבחין באיזה ממשק להשתמש. הערך של זה
המשתנה מושפע מה- --iref אפשרות שורת הפקודה. בדרך כלל משתמשים בו ביחד
עם $router_connect. (אין גרסה עם בריחה HTML זמינה)

$if_בסדר
משתנה זה נכון אם הממשק ייכלל בתצורה
קובץ, אחרת שקר. אל תבדוק מול משתנים אחרים כגון $problem_lines ל
גלה אם ממשק יידחה או לא, השתמש בזה $if_בסדר במקום.

$default_target_lines
משתנה זה מכיל את כל קווי היעד אשר cfgmaker כברירת מחדל מוציא עבור זה
מִמְשָׁק. זה שימושי אם אתה רוצה לקבל את ה"יעד הסטנדרטי" אבל רוצה להוסיף כמה
קווים נוספים אליו באמצעות תבנית.

כברירת מחדל, cfgmaker משתמש בהנחיות הבאות עבור כל יעד שהוא מייצר: Target[],
SetEnv[], MaxBytes[], Title[], PageTop[] ואם יש ספריה כלשהי, צוין גם
מדריך[].

כדי להקל על יצירת תבניות אשר מייצרות תצורות יעד דומות
לברירת המחדל, לכל אחד משורות ההנחיה שהוזכרו לעיל יש ערך מקביל
משתנה המכיל את השורה בתור cfgmaker היה פלט אותו כברירת מחדל.

שים לב שלאף אחד מאלה אין וריאנט HTML עם escaped, הטקסט בהם הוא HTML escaped איפה
נָחוּץ. שים לב גם שאין להם קו חדש בסוף.

$default_target_directive
משתנה זה מכיל את מחרוזת ברירת המחדל עבור שורת ההנחיה Target[].

$default_setenv_directive
משתנה זה מכיל את מחרוזת ברירת המחדל עבור שורת ההנחיה SetEnv[].

$default_directory_directive
משתנה זה מכיל את מחרוזת ברירת המחדל עבור שורת ההנחיה Directory[] אשר
אומר שזו מחרוזת ריקה (ללא שורה חדשה) אם אין ספרייה.

$default_maxbytes_directive
משתנה זה מכיל את מחרוזת ברירת המחדל עבור שורת ההנחיה MaxBytes[].

$default_title_directive
משתנה זה מכיל את מחרוזת ברירת המחדל עבור שורת ההנחיה Title[].

$default_pagetop_directive
משתנה זה מכיל את מחרוזת ברירת המחדל עבור שורות ההנחיה PageTop[].

מִמְשָׁק רשת תְצוּרָה משתנים

$if_ip
משתנה זה צריך להכיל את כתובת ה-IP של הממשק, אם הוקצתה כזו
אליו. (אין גרסה עם בריחה HTML זמינה)

$ifindex
משתנה זה הוא ה-SNMP ifIndex עבור הממשק שלפי הגדרה הוא תמיד an
מספר שלם. (אין גרסה עם בריחה HTML זמינה)

$if_index
שווה ערך ל $ifindex.

$if_eth
מכיל את כתובת ה-ethernet של הממשק, אם בכלל. (אין HTML שנמלט
גרסה זמינה)

$if_speed
משתנה זה הוא המהירות בבתים/שנייה (עם קידומות). (אין HTML שנמלט
גרסה זמינה)

$if_speed_str
משתנה זה הוא תיאור מהירות מבושלת שהוא ביטים או בתים בהתאם
אם אפשרות הביטים פעילה או לא, וגם עם הקידומת המתאימה ל-
מהירות (k, M, G וכו'). (לא זמינה וריאנט בריחה HTML)

$if_type_desc
משתנה זה הוא תיאור טקסטואלי של סוג הממשק. (גרסה בריחה של HTML:
$html_if_type_desc)

$if_type_num
משתנה זה הערך השלם המתאים לסוג הממשק (עבור רישום עבור
הערך עבור סוגי הממשק הנפוצים יותר, עיין בסעיף פרטים על מסננים
מֵעַל). (לא זמינה וריאנט בריחה HTML)

$if_dns_name
זהו שם ה-DNS של הממשק. (לא זמינה וריאנט בריחה HTML)

מִמְשָׁק שם, תיאור ו כינוי משתנים

זה אולי נראה מבלבל עם שניהם שם, תיאור ו כינוי בהקשר זה ולחלקם
במידה שהיא. שם ו תיאור בדרך כלל נתמכים ברוב הציוד אבל איך הם
השימוש בהם משתנה, הן בין יצרנים והן בין קטגוריות שונות של
ציוד מאותו יצרן. ה כינוי נתמך לפחות על ידי Cisco IOS, ו
המשתנה הזה מכיל את כל מה שנמצא בשימוש בהצהרת IOS הנקראת "תיאור" עבור
ממשק (לא להתבלבל עם משתני SNMP עבור תיאור).

לשליטה טובה יותר משורת הפקודה שקול $if_title_desc מהם התכנים
נשלט על ידי --אם-תאר אפשרות שורת הפקודה.

$if_snmp_descr
משתנה זה צריך להכיל את התיאור ה"גולמי" של הממשק כפי שנקבע על ידי
סקר SNMP של הנתב. (גרסה בריחה של HTML: $html_if_snmp_descr)

$if_snmp_name
השם ה"גולמי" עבור הממשק כפי שסופק על ידי סקר SNMP. (גרסה בריחה של HTML:
$html_if_snmp_name)

$if_snmp_alias
ה"גולמי" ifAlias ​​עבור הממשק כפי שסופק על ידי סקר SNMP. (HTML ברח
גִרְסָה אַחֶרֶת: $html_if_snmp_alias)

$if_cisco_descr
CiscolocIfDescr ה"גולמי" עבור הממשק כפי שסופק על ידי סקר SNMP. (HTML
גרסה בריחה: $html_if_cisco_descr)

$if_description
זוהי מחרוזת התיאור ה"מבושלת" עבור הממשק, תוך התחשבות ב
נמצאו ערכי SNMP עבור RDescr, ifAlias ​​ו-CiscolocIfDescr של הממשק. (HTML
גרסה בריחה: $html_if_description)

$if_title
המחרוזת המלאה cfgmaker כברירת מחדל הייתה משתמשת בהוראת Title[] ב-
תצורה וכן התוכן של תג H1 העליון ביותר ב-PageTop[]. האם
מורכב על ידי התוכן של $desc_prefix, $if_title_desc ו $ sysname.

As $if_title תלוי $if_title_desc, אפשר לשלוט בעקיפין $if_title
באמצעות אפשרות שורת הפקודה --אם-תאר.

(גרסה בריחה של HTML: $html_if_title)

$if_port_name
אם המארח הוא מתג LAN של Cisco Catalyst, משתנה זה הוא השם של אותה יציאה.
(לא זמינה וריאנט בריחה HTML)

$if_pp_port_name
אם המארח הוא מתג LAN של Nortel Passport, משתנה זה הוא השם של אותה יציאה.
(לא זמינה וריאנט בריחה HTML)

$desc_prefix
משתנה זה הוא קידומת של התיאור של מה המטרה להשתמש ב-
הנחיית "כותרת[]" ובקטע H1 של "PageTop[]". ברירת המחדל היא "תנועה
ניתוח עבור ". (variant escaped HTML: $html_desc_prefix)

$if_title_desc
זהו התיאור של הממשק בשימוש רגיל על ידי cfgmaker כחלק מה-
משתנה $if_title. האחרון משמש כמחרוזת המלאה בהנחיית "כותרת[]".
וקטע H1 ב-PageTop[].

$if_title_desc נשלטת על ידי אפשרות שורת הפקודה --אם-תאר אשר בעקיפין
שולט בתוכן של $if_title

(גרסה בריחה של HTML: $html_if_title_desc)

עֶזרָה פונקציות ל תבניות

הפונקציות הבאות קיימות כדי להקל על הכתיבה של תבניות מארח וממשק.

html_escape(מחרוזת)
html_escape() לוקח מחרוזת כארגומנט ומחזיר מחרוזת חדשה שבה
ההחלפות הבאות בוצעו: התווים "" ו-"&" מוחלפים ב
"<", ">" ו-"&" וששורות חדשות המוטבעות במחרוזת מוצמדות מראש
"" ומצורף עם תו רווח (שורות חדשות בסוף המחרוזת אינן
נגע).

oid_pick($router_connect,$v3opt,"oid1","oid2"...)
פונקציה זו תנסה לסקור כל אחד מהאוידים שצוינו עד שתצליח או
נגמרו האוידים. זה יחזיר את השם של ה-oid הראשון שעבד או undef if
זה לא מוצלח

דוגמה תבנית קבצים

דוגמה לתבנית 1: ביטול יעדים שנדחו מלהופיע

קובץ תבנית זה יוצר בדיוק את אותו קוד תצורה לכל ממשק כמו cfgmaker
עושה כברירת מחדל, למעט העובדה שהוא מבטל את כל השורות (כמו גם
קוד config) עבור ממשק אם הממשק נדחה במקרה.

if(לא $problem_lines)
{
$target_lines .= <

יעד[$target_name]: $if_ref:$router_connect
SetEnv[$target_name]: MRTG_INT_IP="$if_ip" MRTG_INT_DESCR="$if_snmp_descr"
ECHO

if ($directory_name) {
$target_lines .= "ספרייה[$target_name]: $directory_name\n";
}

$target_lines .= <
MaxBytes[$target_name]: $if_speed
כותרת[$target_name]: $html_desc_prefix$html_if_title_desc -- $sysname
PageTop[$target_name]: $html_desc_prefix$html_if_title_desc -- $sysname



מערכת:
$sysname ב-$html_syslocation


תחזוקה:
$html_syscontact


תיאור:
$html_if_description


ifType:
$html_if_type_desc ($if_type_num)


ifName:
$html_if_snmp_name

ECHO

$target_lines .= <<ECHO אם מוגדר $if_port_name;

שם יציאה:
$if_port_name

ECHO

$target_lines .= <<ECHO אם מוגדר $if_pp_port_name;

שם יציאה:
$if_pp_port_name

ECHO

$target_lines .= <

מהירות מרבית:
$if_speed_str

ECHO

$target_lines .= <

Ip:
$if_ip ($if_dns_name)

ECHO

$target_lines .= <


ECHO
אחר} {
$head_lines="";
$problem_lines="";
$target_lines="";
$separator_lines="";
}

תבנית דוגמה 2: פשוט יותר גִרְסָה of דוגמה 1

דוגמה 1 נועדה בחלקה להדגים כיצד להתאים אישית את יצירת הממשק
מטרות אלא גם לספק רמז לאופן השימוש במשתנים בתבנית "ברירת המחדל".
שבו אפשר לחשוב ש-cfgmaker משתמש בדרך כלל.

אם אתה רק מעוניין בדרך הקלה ביותר לחסל לחלוטין את הדחויים האלה
ממשקים, התבנית למטה תעשה את העבודה גם על ידי שימוש $default_target_lines.

if($if_ok) {
$target_lines = $default_target_lines;
אחר} {
$head_lines="";
$problem_lines="";
$target_lines="";
$separator_lines="";
}

תבנית דוגמה 3: יוצרים CPU יעדים ל מארחים

להלן דוגמה לתבנית מארח.

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

my $target_name = $router_name . ".מעבד";

$target_lines .= <

YLegend[$target_name]: אחוז עומס מעבד
ShortLegend[$target_name]: %
Legend1[$target_name]: עומס מעבד ב-%
Legend2[$target_name]:
Legend3[$target_name]: עומס מעבד מרבי שנצפה
Legend4[$target_name]:
LegendI[$target_name]:  טעינת מעבד:
LegendO[$target_name]:
WithPeak[$target_name]: יאממ
MaxBytes[$target_name]: 100
אפשרויות[$target_name]: growright, gauge, nopercent
כותרת[$target_name]: עומס מעבד $router_name
יעד[$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
PageTop[$target_name]: טעינת מעבד $router_name



מערכת:
$router_name ב-$html_syslocation


תחזוקה:
$html_syscontact


תיאור:
$html_sysdescr


משאב:
מעבד.



ECHO

דוגמאות


הדוגמה הראשונה יוצרת קובץ תצורה עבור router.place.xyz: לנתב יש את
שם קהילה ציבורי. ממשקים מזוהים לפי מספר ה-IP שלהם. שתי אפשרויות גלובליות
להתווסף לקובץ התצורה. קובץ התצורה מופנה אל mrtg.conf. ה '\'
סימנים בסוף השורה אומרים שהפקודה הזו צריכה להיכתב בשורה אחת.

cfgmaker --global "WorkDir: /home/tobi"
--גלובל "אפשרויות[_]: growright,bits"
--ifref=ip
public@router.place.xyz > mrtg.cfg

הערה: אם cfgmaker לא נמצא בנתיב שלך, אבל אתה נמצא בספרייה שבה נמצא cfgmaker
מאוחסן, אתה יכול להפעיל אותו עם ./cfgmaker

הדוגמה הבאה יוצרת קובץ תצורה עבור ארבעה מכשירים: router1.place.xyz,
router2.place.xyz, switch1.place.xyz ו switch2.place.xyz הכל עם הקהילה ציבורי.

לשני הנתבים יהיו --iref מכוון ל מתאר בעוד שני המתגים ישתמשו --iref
מכוון ל שם. בהמשך ישתמשו הנתבים --ifdesc מכוון ל כינוי ו switch1.place.xyz
אשתמש --ifdesc מכוון ל מתאר תוך switch2.place.xyz להשתמש שם במקום.

לבסוף, יהיו שתי שורות Options בתצורה: אחת תהיה ב-
התחלה, בעוד שהשני יוכנס אחרי הקווים הקשורים לשני הנתבים
אבל לפני הקווים האלה הקשורים למתגים.

cfgmaker --global "WorkDir: /home/tobi"
--גלובל "אפשרויות[_]: growright,bits"
--ifref=descr
--ifdesc=כינוי
public@router1.place.xyz
public@router2.place.xyz
--גלובל "אפשרויות[_]: growright"
--ifref=שם
--ifdesc=descr
public@switch1.place.xyz
--ifdesc=שם
public@switch2.place.xyz > mrtg.cfg

הדוגמה הבאה מדגימה כיצד להשתמש ב- -- קהילה, --snmp-אפשרויות ו --dns-domain
כדי להפוך את שורת הפקודה לפשוטה יותר. כל הציוד ישתמש בקהילה מוסתר, מלבד
עבור שרת ppp המשתמשים בקהילה גישה. כל הציוד משתמש באפשרויות ה-SNMP הבאות: 1s
פסק זמן, 1 נסה שוב ו SNMP גרסה 2 (התרחק ו נמל לא מצוין מה שאומר שהם משתמשים
ערכי ברירת המחדל). היוצא מן הכלל שוב הוא שרת ppp שמשתמש SNMP גרסה 1.
לבסוף, כל הציוד הוא חלק מהתחום place.xyz, פרט לשרת ppp
שהוא חלק מהדומיין מרוחק.מקום.xyz. שימו לב שהאחרון מושג פשוט על ידי
ציון שם השרת ppp להיות ppp-שרת.מרחוק .

cfgmaker --global "WorkDir: /home/tobi"
--גלובל "אפשרויות[_]: growright,bits"
--dns-domain=place.xyz
--קהילה=נסתר
--snmp-options=::1:1::2
נתב 1
נתב 2
נתב 3
נתב 4
נתב 5
switch1
switch2
switch3
switch4
switch5
switch6
switch7
access@ppp-server.remote:::::1 > mrtg.cfg

השתמש ב-cfgmaker באינטרנט באמצעות שירותי onworks.net



התוכניות המקוונות האחרונות של לינוקס ו-Windows