2 * Copyright (c) 2022 Juniper Networks, Inc.
5 module junos-conf-snmp {
6 namespace "http://yang.juniper.net/junos/conf/snmp";
10 import junos-common-ddl-extensions {
12 revision-date 2022-01-01;
15 import junos-common-types {
17 revision-date 2022-01-01;
20 import junos-conf-root {
22 revision-date 2022-01-01;
25 organization "Juniper Networks, Inc.";
27 contact "yang-support@juniper.net";
29 description "Junos snmp configuration module";
32 description "Junos: 22.3R1.9";
35 augment /jc:configuration {
38 augment /jc:configuration/jc:groups {
43 description "Simple Network Management Protocol configuration";
46 description "System name override";
50 description "System description";
54 description "Physical location of system";
58 description "Contact information for administrator";
63 description "Restrict SNMP requests to interfaces";
65 type jt:interface-name;
71 container alarm-management {
72 description "Alarm management";
74 list alarm-list-name {
77 description "Alarm list name";
79 description "Alarm list name";
88 description "Alarm id";
90 description "Alarm id";
96 range "1 .. 4294967295";
104 description "Alarm model state, configure state value as 1 for clear alarm";
106 description "Alarm state";
112 range "1 .. 4294967295";
117 leaf notification-id {
118 description "Notification id of alarm";
124 description "Varbind index in alarm varbind list";
126 junos:must "(\".. varbind-value\")";
127 junos:must-message "[varbind-value] must be configured for varbind-index";
133 range "0 .. 4294967295";
138 description "Alarm varbind value";
140 junos:must "(\".. varbind-index\")";
141 junos:must-message "[varbind-index] must be configured for varbind-value";
147 range "0 .. 2147483647";
152 description "Alarm description";
157 leaf varbind-subtree {
158 description "Alarm varbind subtree";
159 junos:must "((\".. resource-prefix\" && \".. varbind-index\"))";
160 junos:must-message "resource-prefix and varbind-index must be configured for varbind-subtree";
165 leaf resource-prefix {
166 description "Alarm resource prefix";
175 container filter-interfaces {
176 presence "enable filter-interfaces";
177 description "List of interfaces that needs to be filtered";
182 description "Filter specified interfaces";
188 leaf all-internal-interfaces {
189 description "Filter all internal interfaces";
193 leaf if-count-with-filter-interfaces {
194 description "Filter interfaces config for ifNumber and ipv6Interfaces";
197 leaf filter-duplicates {
198 description "Filter requests with duplicate source address/port and request ID";
201 container nonvolatile {
202 description "Configure the handling of nonvolatile SNMP Set requests";
205 description "Delay between affirmative SNMP Set reply and start of commit";
217 description "SNMPv3 configuration information";
220 description "User-based security model (USM) information";
222 container local-engine {
223 description "Local engine user configuration";
228 description "SNMPv3 USM user information";
235 description "Remote engine user configuration";
237 description "Remote engine id (Hex format)";
239 junos:posix-pattern "^.{5,64}$";
240 junos:pattern-message "Must be a string of 5 to 64 hex characters";
247 description "SNMPv3 USM user information";
253 description "View-based access control model (VACM) information";
255 container security-to-group {
256 description "Assigns security names to group";
258 list security-model {
261 description "Security model context for group assignment";
263 description "SNMPv3 security-to-group model name";
266 description "User-based security model";
269 description "SNMPv1 model";
272 description "SNMPv2c model";
280 description "Security name to assign to group";
282 description "Security name";
289 description "Group to which to assign security name";
298 description "Specify SNMP access limits";
303 description "Group access configuration";
305 description "SNMPv3 VACM group name";
311 container default-context-prefix {
312 description "Default context-prefix access configuration";
314 list security-model {
317 description "Security model access configuration";
318 uses security-model-access;
321 list context-prefix {
324 description "Context-prefix access configuration";
326 description "SNMPv3 VACM context prefix";
328 junos:posix-pattern "^.{1,32}$";
329 junos:pattern-message "Must be a string of 32 characters or less";
333 list security-model {
336 description "Security model access configuration";
337 uses security-model-access;
343 list target-address {
346 description "Identifies notification targets as well as allowed management stations";
348 description "SNMP target address name";
355 description "SNMP target address";
359 description "SNMP target port number";
369 description "Acknowledgment timeout for confirmed SNMP notifications";
380 description "Maximum retry count for confirmed SNMP notifications";
392 description "SNMP tag list used to select target addresses";
398 description "Mask range of addresses for community string access control.";
401 leaf routing-instance {
402 description "Routing instance for trap destination";
404 junos:posix-pattern "!^(([*]{1,})|(__.*__)|(.{194,}))$";
405 junos:pattern-message "Must be a non-reserved string of 193 characters or less";
408 leaf logical-system {
409 description "Logical-system name for trap destination";
411 junos:posix-pattern "^[a-zA-Z0-9_-]{1,63}$";
412 junos:pattern-message "Logical-system name is a string consisting of up to 63 letters, numbers, dashes and underscores";
415 leaf target-parameters {
416 description "SNMPv3 target parameter name in the target parameters table";
422 list target-parameters {
425 description "Parameters and filter name used when sending notifications";
427 description "SNMPv3 target parameters name";
433 container parameters {
434 description "Parameters used when sending notifications";
436 leaf message-processing-model {
437 description "The message processing model to be used when generating SNMP notifications";
440 description "SNMPv1 model";
443 description "SNMPv2c model";
446 description "SNMPv3 model";
450 leaf security-model {
451 description "Security-model used when generating SNMP notifications";
454 description "User-based security model";
457 description "SNMPv1 model";
460 description "SNMPv2c model";
464 leaf security-level {
465 description "Security-level used when generating SNMP notifications";
468 description "None (noAuthNoPriv)";
470 enum "authentication" {
471 description "Authentication (authNoPriv)";
474 description "Privacy and authentication (authPriv)";
479 description "Security name used when generating SNMP notifications";
485 container notify-filter {
486 description "Notify filter to apply to notifications";
488 description "Filter name to apply to notifications";
498 description "Used to select management targets for notifications as well as the type of notifications";
500 description "Notify name";
507 description "Notification type";
511 description "SNMP trap";
514 description "Inform request";
519 description "Notifications will be sent to all targets configured with this tag";
528 description "Filters to apply to SNMP notifications";
530 description "SNMP profile name in the notify filter table";
539 description "OID include/exclude list";
541 description "OID to include/exclude from notify filter";
543 junos:posix-pattern "^(.?1|[a-zA-Z][a-zA-Z0-9]*)(.[0-9]+|[.][*]|[.][a-zA-Z])*$";
544 junos:pattern-message "Must be an OID of the form 1.x.*.z... or objname[.x.*.z]";
547 choice filter-action {
550 description "Include this OID in the notify filter";
556 description "Exclude this OID from the notify filter";
563 leaf management-routing-instance {
564 description "Enable SNMPv3 access for all routing instances from this default context";
565 junos:must "(\"routing-instances $$\")";
566 junos:must-message "Referenced routing instance must be defined under [edit routing-instances] hierarchy level";
568 junos:posix-pattern "!^((__.*__)|(all)|(.*[ ].*)|(\"\")|(.{129,}))$";
569 junos:pattern-message "Must be a non-reserved string of 128 characters or less with no spaces.";
572 list snmp-community {
575 description "SNMP community and view-based access control model configuration";
577 description "Unique index value in this community table entry";
583 leaf community-name {
584 description "SNMPv1/v2c community name (default is same as community-index)";
588 description "Security name used when performing access control";
594 description "Context used when performing access control";
600 description "Tag identifier for set of targets allowed to use this community string";
610 description "SNMP proxy configuration";
612 description "Unique proxy name";
617 description "Satellite/Proxied Device name or IP address";
622 container version-v1 {
623 description "For v1 proxy configuration define snmp-community";
628 container version-v2c {
629 description "For v2c proxy configuration define snmp-community";
634 container version-v3 {
635 description "For v3 proxy configuration define security-name";
640 list routing-instance {
643 description "Associate routing-instance name for proxy forwarding";
645 description "Routing-instance name for proxy forwarding";
650 list logical-system {
653 description "Associate logical-system name for proxy forwarding";
655 description "Associate logical-system name for proxy forwarding";
656 junos:must "(\".. .. logical-system $$ routing-instance\")";
657 junos:must-message "[routing-instance] must be configured for this logical-system";
659 junos:posix-pattern "^[a-zA-Z0-9_-]{1,63}$";
660 junos:pattern-message "Logical-system name is a string consisting of up to 63 letters, numbers, dashes and underscores";
664 list routing-instance {
667 description "Associate routing-instance name for proxy forwarding";
669 description "Routing-instance name for proxy forwarding";
676 description "Set routing-instance for NFX Host";
681 description "SNMP subagent configuration";
684 presence "enable tcp";
685 description "Allow SNMP subagent tcp connection";
687 container routing-instance {
688 description "Specify routing-instance name for tcp connection";
691 description "Allow connections over default routing-instance";
697 container engine-id {
698 description "SNMPv3 engine ID";
700 choice engine-id-choice {
702 leaf use-mac-address {
703 description "Uses management interface MAC Address for the engine ID";
708 leaf use-default-ip-address {
709 description "Use default IP address for the engine ID";
715 description "Local engine ID";
717 junos:posix-pattern "^.{1,27}$";
718 junos:pattern-message "Must be a string of 27 characters or less";
725 description "SNMPv3 access information";
731 description "SNMPv3 USM user information";
733 description "SNMPv3 USM username";
735 junos:posix-pattern "^.{1,32}$";
736 junos:pattern-message "Must be a string of 32 characters or less";
740 leaf authentication-type {
741 description "SNMPv3 USM authentication type";
744 description "No authentication";
747 description "MD5 hash algorithm";
750 description "SHA hash algorithm";
754 leaf authentication-password {
755 description "SNMPv3 USM authentication password";
759 description "SNMPv3 USM privacy type";
762 description "No privacy";
765 description "DES algorithm";
769 leaf privacy-password {
770 description "SNMPv3 USM privacy password";
776 description "List of source address prefix ranges to accept";
778 description "Address or prefix";
782 description "Deny access";
790 description "SNMPv3 USM group information";
792 description "SNMPv3 USM group name";
794 junos:posix-pattern "^.{1,32}$";
795 junos:pattern-message "Must be a string of 32 characters or less";
801 description "SNMPv3 USM username";
805 description "SNMPv3 security model";
808 description "User-based security model";
816 description "SNMPv3 context information";
818 description "SNMPv3 context name";
820 junos:posix-pattern "^.{0,32}$";
821 junos:pattern-message "Must be a string of 32 characters or less";
826 description "SNMPv3 context description";
832 description "Access group";
834 description "SNMPv3 USM group name";
836 junos:posix-pattern "^.{1,32}$";
837 junos:pattern-message "Must be a string of 32 characters or less";
842 description "SNMPv3 security model";
845 description "User-based security model";
849 leaf security-level {
850 description "SNMPv3 security level";
853 description "None: NoAuthNoPriv";
855 enum "authentication" {
856 description "Authentication: AuthNoPriv";
859 description "Privacy: AuthPriv";
864 description "Read view name";
866 junos:posix-pattern "^.{1,32}$";
867 junos:pattern-message "Must be a string of 32 characters or less";
871 description "Write view name";
873 junos:posix-pattern "^.{1,32}$";
874 junos:pattern-message "Must be a string of 32 characters or less";
883 description "Define MIB views";
885 description "MIB view name";
887 junos:posix-pattern "^.{1,32}$";
888 junos:pattern-message "Must be a string of 32 characters or less";
895 description "OID include/exclude list";
897 description "OID to include or exclude from view";
899 junos:posix-pattern "^(.?1|[a-zA-Z][a-zA-Z0-9]*)(.[0-9]+|[.][*]|[.][a-zA-Z])*$";
900 junos:pattern-message "Must be an OID of the form 1.x.*.z... or objname[.x.*.z]";
906 description "Include this OID in the view";
912 description "Exclude this OID from the view";
922 description "Client list";
924 description "The name for the client list";
926 junos:posix-pattern "^.{1,128}$";
927 junos:pattern-message "Must be a string of 128 characters or less";
931 list client-address-list {
934 description "Client address list";
935 uses client-address-object;
941 description "Configure a community string";
943 description "Community name";
948 description "View name";
952 description "Authorization type";
955 description "Allow read-only access";
958 description "Allow read and write access";
962 choice clients_choice {
964 leaf client-list-name {
965 description "The name of client list or prefix list";
967 junos:posix-pattern "^.{1,128}$";
968 junos:pattern-message "Must be a string of 128 characters or less";
976 description "List of source address prefix ranges to accept";
978 description "Address or prefix";
982 description "Deny access";
988 list routing-instances {
991 description "Use logical-system/routing-instance for v1/v2c clients";
994 description "Routing instance of v1/v2c clients";
995 junos:must "(\"snmp routing-instance-access\")";
996 junos:must-message "[snmp routing-instance-access] must be configured";
998 junos:posix-pattern "!^(([*]{1,})|(__.*__)|(.{194,}))$";
999 junos:pattern-message "Must be a non-reserved string of 193 characters or less";
1002 uses apply-advanced;
1003 choice clients_choice {
1005 leaf client-list-name {
1006 description "The name of client list or prefix list";
1008 junos:posix-pattern "^.{1,128}$";
1009 junos:pattern-message "Must be a string of 128 characters or less";
1017 description "List of source address prefix ranges to accept";
1019 description "Address or prefix";
1023 description "Deny access";
1030 list routing-instance {
1033 description "Use routing-instance name for v1/v2c clients";
1035 description "Routing instance of v1/v2c clients";
1036 junos:must "(\"snmp routing-instance-access\")";
1037 junos:must-message "[snmp routing-instance-access] must be configured";
1039 junos:posix-pattern "!^((__.*__)|(all)|(.*[ ].*)|(\"\")|(.{129,}))$";
1040 junos:pattern-message "Must be a non-reserved string of 128 characters or less with no spaces.";
1043 uses apply-advanced;
1044 choice clients_choice {
1046 leaf client-list-name {
1047 description "The name of client list or prefix list";
1049 junos:posix-pattern "^.{1,128}$";
1050 junos:pattern-message "Must be a string of 128 characters or less";
1058 description "List of source address prefix ranges to accept";
1060 description "Address or prefix";
1064 description "Deny access";
1071 list logical-system {
1074 description "Use logical-system name for v1/v2c clients";
1076 description "Use logical-system name for v1/v2c clients";
1077 junos:must "(\".. .. logical-system $$ routing-instance\")";
1078 junos:must-message "[routing-instance] must be configured for this logical-system";
1080 junos:posix-pattern "^[a-zA-Z0-9_-]{1,63}$";
1081 junos:pattern-message "Logical-system name is a string consisting of up to 63 letters, numbers, dashes and underscores";
1084 uses apply-advanced;
1085 list routing-instance {
1088 description "Use routing-instance name for v1/v2c clients";
1090 description "Routing instance of v1/v2c clients";
1091 junos:must "(\"snmp routing-instance-access\")";
1092 junos:must-message "[snmp routing-instance-access] must be configured";
1094 junos:posix-pattern "!^((__.*__)|(all)|(.*[ ].*)|(\"\")|(.{129,}))$";
1095 junos:pattern-message "Must be a non-reserved string of 128 characters or less with no spaces.";
1098 uses apply-advanced;
1099 choice clients_choice {
1101 leaf client-list-name {
1102 description "The name of client list or prefix list";
1104 junos:posix-pattern "^.{1,128}$";
1105 junos:pattern-message "Must be a string of 128 characters or less";
1113 description "List of source address prefix ranges to accept";
1115 description "Address or prefix";
1119 description "Deny access";
1128 container trap-options {
1129 presence "enable trap-options";
1130 description "SNMP trap options";
1131 uses apply-advanced;
1132 container source-address {
1133 description "IPv4/IPv6 source address for trap PDUs";
1134 uses apply-advanced;
1135 choice address-choice {
1138 description "Use lowest address on loopback interface";
1144 description "Use specified address";
1150 leaf enterprise-oid {
1151 description "Add snmpTrapEnterprise oid in varbind of all traps";
1155 description "Add context oid in varbind of all traps at the end";
1158 list routing-instances {
1161 description "Use routing-instance name for source-address";
1164 description "Routing instance of trap destination";
1165 junos:must "(\".. source-address\")";
1166 junos:must-message "source-address must be configured";
1168 junos:posix-pattern "!^(([*]{1,})|(__.*__)|(.{194,}))$";
1169 junos:pattern-message "Must be a non-reserved string of 193 characters or less";
1172 uses apply-advanced;
1173 container source-address {
1174 description "IPv4/IPv6 source address for trap PDUs";
1175 uses apply-advanced;
1176 choice address-choice {
1179 description "Use lowest address on loopback interface";
1185 description "Use specified address";
1192 list routing-instance {
1195 description "Use routing-instance name for source-address";
1197 description "Routing instance of trap destination";
1198 junos:must "(\".. source-address\")";
1199 junos:must-message "source-address must be configured";
1201 junos:posix-pattern "!^((__.*__)|(all)|(.*[ ].*)|(\"\")|(.{129,}))$";
1202 junos:pattern-message "Must be a non-reserved string of 128 characters or less with no spaces.";
1205 uses apply-advanced;
1206 container source-address {
1207 description "IPv4/IPv6 source address for trap PDUs";
1208 uses apply-advanced;
1209 choice address-choice {
1212 description "Use lowest address on loopback interface";
1218 description "Use specified address";
1225 list logical-system {
1228 description "Use logical-system name for source-address";
1230 description "Use logical-system name for source-address";
1231 junos:must "(\".. .. logical-system $$ routing-instance\")";
1232 junos:must-message "[routing-instance] must be configured for this logical-system";
1234 junos:posix-pattern "^[a-zA-Z0-9_-]{1,63}$";
1235 junos:pattern-message "Logical-system name is a string consisting of up to 63 letters, numbers, dashes and underscores";
1238 uses apply-advanced;
1239 list routing-instance {
1242 description "Use routing-instance name for source-address";
1244 description "Routing instance of trap destination";
1245 junos:must "(\".. source-address\")";
1246 junos:must-message "source-address must be configured";
1248 junos:posix-pattern "!^((__.*__)|(all)|(.*[ ].*)|(\"\")|(.{129,}))$";
1249 junos:pattern-message "Must be a non-reserved string of 128 characters or less with no spaces.";
1252 uses apply-advanced;
1253 container source-address {
1254 description "IPv4/IPv6 source address for trap PDUs";
1255 uses apply-advanced;
1256 choice address-choice {
1259 description "Use lowest address on loopback interface";
1265 description "Use specified address";
1273 leaf agent-address {
1274 description "Agent address for v1 trap PDUs";
1276 enum "outgoing-interface" {
1277 description "Use address on outgoing interface";
1285 description "Configure traps and notifications";
1287 description "Trap group name";
1290 uses apply-advanced;
1292 description "SNMP version";
1295 description "Send SNMPv1 and SNMPv2 traps";
1298 description "Send SNMPv1 traps";
1301 description "Send SNMPv2 traps";
1305 leaf destination-port {
1306 description "SNMP trap receiver port number";
1314 container categories {
1315 description "Trap categories";
1316 uses apply-advanced;
1317 leaf authentication {
1318 description "Authentication failures";
1322 description "Chassis or environment notifications";
1326 description "Link up-down transitions";
1329 leaf remote-operations {
1330 description "Remote operations";
1334 description "Routing protocol notifications";
1338 description "System warm and cold starts";
1342 description "GGSN notifications";
1346 description "RMON rising and falling alarms";
1350 description "VRRP notifications";
1353 leaf configuration {
1354 description "Configuration notifications";
1358 description "Services notifications";
1361 leaf chassis-cluster {
1362 description "Clustering notifications";
1365 leaf timing-events {
1366 description "Timing defects/events notifications";
1369 leaf dot3oam-events {
1370 description "802.3ah notifications";
1373 container sonet-alarms {
1374 presence "enable sonet-alarms";
1375 description "SONET alarm trap subcategories";
1376 uses apply-advanced;
1377 leaf loss-of-light {
1378 description "Loss of light alarm notification";
1382 description "PLL lock alarm notification";
1385 leaf loss-of-frame {
1386 description "Loss of frame alarm notification";
1389 leaf loss-of-signal {
1390 description "Loss of signal alarm notification";
1393 leaf severely-errored-frame {
1394 description "Severely errored frame alarm notification";
1398 description "Line AIS alarm notification";
1402 description "Path AIS alarm notification";
1405 leaf loss-of-pointer {
1406 description "Loss of pointer alarm notification";
1410 description "Sonet bit error rate alarm defect notification";
1414 description "Sonet bit error rate alarm fault notification";
1417 leaf line-remote-defect-indication {
1418 description "Line Remote Defect Indication alarm notification";
1421 leaf path-remote-defect-indication {
1422 description "Path Remote Defect Indication alarm notification";
1425 leaf remote-error-indication {
1426 description "Remote Error Indication alarm notification";
1430 description "Unequipped alarm notification";
1433 leaf path-mismatch {
1434 description "Path mismatch alarm notification";
1438 description "Loss of Cell delineation alarm notification";
1442 description "VT AIS alarm notification";
1445 leaf vt-loss-of-pointer {
1446 description "VT Loss Of Pointer alarm notification";
1449 leaf vt-remote-defect-indication {
1450 description "VT Remote Defect Indication alarm notification";
1453 leaf vt-unequipped {
1454 description "VT Unequipped alarm notification";
1457 leaf vt-label-mismatch {
1458 description "VT label mismatch error notification";
1461 leaf vt-loss-of-cell {
1462 description "VT Loss of Cell delineation notification";
1466 container otn-alarms {
1467 presence "enable otn-alarms";
1468 description "OTN alarm trap subcategories";
1469 uses apply-advanced;
1471 description "Loss of signal alarm notification";
1475 description "Loss of frame alarm notification";
1479 description "Loss of multiframe alarm notification";
1482 leaf wavelength-lock {
1483 description "Wavelength lock alarm notification";
1487 description "OTU Alarm indication signal alarm notification";
1491 description "OTU Backward defect indication alarm notification";
1495 description "OTU Trace identification mismatch alarm notification";
1499 description "OTU Incoming alignment error alarm notification";
1503 description "OTU Signal degrade alarm notification";
1507 description "OTU Signal fail alarm notification";
1511 description "OTU Fec excessive errors alarm notification";
1515 description "OTU Fec degraded errors alarm notification";
1518 leaf otu-bbe-threshold {
1519 description "OTU Background block error threshold alarm notification";
1522 leaf otu-es-threshold {
1523 description "OTU Errored Second threshold alarm notification";
1526 leaf otu-ses-threshold {
1527 description "OTU Severely Errored Second threshold alarm notification";
1530 leaf otu-uas-threshold {
1531 description "OTU Unavailable Second threshold alarm notification";
1535 description "ODU Alarm indication signal alarm notification";
1539 description "ODU Open connection indicator alarm notification";
1543 description "ODU Locked alarm notification";
1547 description "ODU Backward defect indication alarm notification";
1551 description "ODU Trace identification mismatch alarm notification";
1555 description "ODU Signal degrade alarm notification";
1559 description "ODU Signal fail alarm notification";
1562 leaf odu-rx-aps-change {
1563 description "ODU Receive APS change notification";
1566 leaf odu-bbe-threshold {
1567 description "ODU Background block error threshold alarm notification";
1570 leaf odu-es-threshold {
1571 description "ODU Errored Second threshold alarm notification";
1574 leaf odu-ses-threshold {
1575 description "ODU Severely Errored Second threshold alarm notification";
1578 leaf odu-uas-threshold {
1579 description "ODU Unavailable Second threshold alarm notification";
1583 description "ODU Payload Type Mismatch alarm notification";
1591 description "Targets for trap messages";
1593 description "IP address";
1597 leaf routing-instance {
1598 description "Routing instance for trap destination";
1600 junos:posix-pattern "!^(([*]{1,})|(__.*__)|(.{194,}))$";
1601 junos:pattern-message "Must be a non-reserved string of 193 characters or less";
1604 leaf logical-system {
1605 description "Logical-system name for trap destination";
1607 junos:posix-pattern "^[a-zA-Z0-9_-]{1,63}$";
1608 junos:pattern-message "Logical-system name is a string consisting of up to 63 letters, numbers, dashes and underscores";
1612 container routing-instance-access {
1613 presence "enable routing-instance-access";
1614 description "SNMP routing-instance options";
1615 uses apply-advanced;
1618 description "Allow/Deny SNMP access to routing-instances";
1620 description "Routing-instance in format <name>, <prefix>* or *";
1621 junos:must "(!(\"snmp routing-instance-access access-list $$={default}\"))";
1622 junos:must-message "default routing-instance is always allowed";
1624 junos:posix-pattern "!^((__.*__)|(.{194,}))$";
1625 junos:pattern-message "Must be a non-reserved string of 193 characters or less";
1629 description "Deny access";
1634 leaf logical-system-trap-filter {
1635 description "Allow only logical-system specific traps";
1638 container traceoptions {
1639 description "Trace options for SNMP";
1640 uses apply-advanced;
1641 container memory-trace {
1642 presence "enable memory-trace";
1643 junos:must "(!(\"snmp traceoptions no-default-memory-trace\"))";
1644 junos:must-message "remove no-default-memory-trace config to activate memory-trace";
1645 description "Memory tracing information";
1646 uses apply-advanced;
1648 description "Memory size reserved for tracing ";
1656 range "1250 .. 12500";
1661 leaf no-remote-trace {
1662 description "Disable remote tracing";
1663 junos:must "(\"system tracing\")";
1664 junos:must-message "'no-remote-trace' is valid only when [system tracing] is configured";
1668 description "Trace file information";
1670 description "Maximum trace file size";
1674 description "Maximum number of trace files";
1685 choice world-readable-choice {
1686 leaf world-readable {
1687 description "Allow any user to read the log file";
1690 leaf no-world-readable {
1691 description "Don't allow any user to read the log file";
1696 description "Regular expression for lines to be logged";
1697 type jt:regular-expression;
1703 description "Tracing parameters";
1707 description "Trace internal timer events";
1709 enum "protocol-timeouts" {
1710 description "Trace SNMP request timeouts";
1713 description "Dump SNMP request/response packets";
1715 enum "varbind-error" {
1716 description "Trace varbind errors";
1718 enum "routing-socket" {
1719 description "Trace routing socket calls";
1721 enum "interface-stats" {
1722 description "Trace interface statistics (logical and physical)";
1725 description "Trace master-agent interations with sub-agents";
1728 description "Trace general events";
1730 enum "nonvolatile-sets" {
1731 description "Nonvolatile SNMP set request handling";
1734 description "Trace everything";
1741 presence "enable rmon";
1742 description "Remote Monitoring configuration";
1743 uses apply-advanced;
1747 description "RMON history entries";
1749 description "RMON history identifier";
1759 uses apply-advanced;
1761 description "Enable RMON on this interface";
1763 type jt:interface-name;
1770 description "Requested buckets for the interface";
1782 description "Interval between samples";
1790 range "1 .. 2147483647";
1795 description "Owner name of the entry";
1797 junos:posix-pattern "^[[:alnum:]._-]{0,32}$";
1798 junos:pattern-message "Must be an alphanumberic string of 32 characters or less";
1805 description "RMON alarm entries";
1807 description "RMON alarm identifier";
1817 uses apply-advanced;
1819 description "General description of alarm (stored in alarmOwner)";
1821 junos:posix-pattern "^.{1,120}$";
1822 junos:pattern-message "Must be a string of 120 characters or less";
1826 description "Interval between samples";
1834 range "1 .. 2147483647";
1838 leaf falling-threshold-interval {
1839 description "Interval between samples during falling-threshold test";
1840 default "2147483647";
1847 range "1 .. 2147483647";
1852 description "OID of MIB variable to be monitored";
1854 junos:posix-pattern "^([.]?1|[a-zA-Z][a-zA-Z0-9]*)([.]([a-zA-Z]|[0-9]+))*$";
1855 junos:pattern-message "Must be an OID of the form 1.x.y.z... or objname[.x.y.z] where x, y, & z are either numbers or a single letter";
1859 description "Method of sampling the selected variable";
1861 enum "absolute-value" {
1862 description "Absolute sample value is used";
1864 enum "delta-value" {
1865 description "Difference between sampled values is used";
1870 description "Type of SNMP request to issue for alarm";
1871 default "get-request";
1873 enum "get-request" {
1874 description "Get request";
1876 enum "get-next-request" {
1877 description "Get-next request";
1879 enum "walk-request" {
1880 description "Walk request";
1884 leaf startup-alarm {
1885 description "The alarm that may be sent upon entry startup";
1886 default "rising-or-falling-alarm";
1888 enum "rising-alarm" {
1889 description "Rising alarm may be sent at startup";
1891 enum "falling-alarm" {
1892 description "Falling alarm may be sent at startup";
1894 enum "rising-or-falling-alarm" {
1895 description "Rising or falling alarm may be sent at startup";
1899 leaf rising-threshold {
1900 description "The rising threshold";
1908 leaf falling-threshold {
1909 description "The falling threshold";
1910 default "2147483647";
1918 leaf rising-event-index {
1919 description "Event triggered after rising threshold is crossed";
1930 leaf falling-event-index {
1931 description "Event triggered after falling threshold is crossed";
1942 leaf syslog-subtag {
1943 description "Tag to be added to syslog messages";
1945 junos:posix-pattern "^[A-Z][A-Z0-9_]{0,79}$";
1946 junos:pattern-message "Must be a string of 80 upper case characters or less";
1953 description "RMON event entries";
1955 description "RMON event identifier";
1965 uses apply-advanced;
1967 description "General description of event";
1969 junos:posix-pattern "^.{1,127}$";
1970 junos:pattern-message "Must be a string of 127 characters or less";
1974 description "The type of notification for this event";
1975 default "log-and-trap";
1978 description "No notifications";
1981 description "Add entry to logTable";
1984 description "Send SNMP trap";
1986 enum "log-and-trap" {
1987 description "Send SNMP trap and make log entry";
1992 description "The community (trap group) for outgoing traps";
1994 junos:posix-pattern "^.{1,127}$";
1995 junos:pattern-message "Must be a string of 127 characters or less";
2000 container health-monitor {
2001 presence "enable health-monitor";
2002 description "Health monitoring configuration";
2003 uses apply-advanced;
2005 description "Interval between samples";
2012 range "1 .. 2147483647";
2016 leaf rising-threshold {
2017 description "Rising threshold applied to all monitored objects";
2028 leaf falling-threshold {
2029 description "Falling threshold applied to all monitored objects";
2041 presence "enable idp";
2042 description "IDP health monitor configuration";
2043 uses apply-advanced;
2045 description "Interval between samples";
2052 range "1 .. 2147483647";
2056 leaf rising-threshold {
2057 description "Rising threshold applied to all monitored objects";
2068 leaf falling-threshold {
2069 description "Falling threshold applied to all monitored objects";
2083 presence "enable arp";
2084 description "JVision ARP settings";
2085 uses apply-advanced;
2086 leaf host-name-resolution {
2087 description "Enable host name resolution";
2091 container customization {
2092 description "Customize SNMP behaviour based on knob";
2093 uses apply-advanced;
2094 leaf ether-stats-ifd-only {
2095 description "To stop exposing IFLs as part of etherStatsTable";
2101 grouping apply-advanced {
2102 description "Apply advanced configuration logic";
2103 leaf-list apply-groups {
2105 description "Groups from which to inherit configuration data";
2108 leaf-list apply-groups-except {
2110 description "Don't inherit configuration data from these groups";
2116 description "Macro and parameters for commit script expansion";
2117 uses apply-macro-type;
2120 grouping apply-macro-type {
2121 description "Macro data for commit-script expansion";
2123 description "Name of the macro to be expanded";
2128 uses macro-data-type;
2131 grouping client-address-object {
2132 description "Client address";
2134 description "Address or prefix";
2137 uses apply-advanced;
2139 description "Deny access";
2143 grouping comm-object {
2144 description "Specify snmp-community name";
2145 uses apply-advanced;
2146 leaf snmp-community {
2147 description "Specify community name";
2152 leaf no-default-comm-to-v3-config {
2153 description "No default snmp-community and v3 configuration";
2157 grouping macro-data-type {
2159 description "Keyword part of the keyword-value pair";
2163 description "Value part of the keyword-value pair";
2167 grouping sec-object {
2168 description "Specify security-name";
2169 uses apply-advanced;
2170 leaf security-name {
2171 description "Specify v3 security-name";
2177 description "Specify context name associated to this security-name";
2181 grouping security-model-access {
2182 description "Security access configuration";
2184 description "SNMPv3 VACM security model";
2187 description "Any security model";
2190 description "User-based security model";
2193 description "SNMPv1 model";
2196 description "SNMPv2c model";
2200 uses apply-advanced;
2201 list security-level {
2204 description "Security level access configuration";
2206 description "SNMPv3 VACM security level";
2209 description "None (noAuthNoPriv)";
2211 enum "authentication" {
2212 description "Authentication (authNoPriv)";
2215 description "Privacy and authentication (authPriv)";
2219 uses apply-advanced;
2220 leaf context-match {
2221 description "Type of match to perform on context-prefix";
2225 description "Exact match of prefix and context name";
2228 description "Only match the context prefix";
2233 description "View used for read access";
2235 junos:posix-pattern "^.{0,32}$";
2236 junos:pattern-message "Must be a string of 32 characters or less";
2240 description "View used for write access";
2242 junos:posix-pattern "^.{0,32}$";
2243 junos:pattern-message "Must be a string of 32 characters or less";
2247 description "View used to notifications";
2249 junos:posix-pattern "^.{0,32}$";
2250 junos:pattern-message "Must be a string of 32 characters or less";
2255 grouping v3-user-config {
2256 description "SNMPv3 user configuration";
2258 description "User name";
2263 uses apply-advanced;
2264 choice authentication {
2266 container authentication-md5 {
2267 description "Configure MD5 authentication";
2272 container authentication-sha {
2273 description "Configure SHA authentication";
2278 container authentication-sha224 {
2279 description "Configure SHA224 authentication";
2284 container authentication-sha256 {
2285 description "Configure SHA256 authentication";
2290 container authentication-sha384 {
2291 description "Configure SHA384 authentication";
2296 container authentication-sha512 {
2297 description "Configure SHA512 authentication";
2302 leaf authentication-none {
2303 description "Set no authentication for the user";
2310 container privacy-des {
2311 description "Configure DES privacy";
2317 container privacy-3des {
2318 description "Configure Triple DES privacy";
2323 container privacy-aes128 {
2324 description "Configure AES128 privacy";
2330 description "Set no privacy for the user";
2336 grouping auth-object {
2337 description "Authentication parameters";
2338 uses apply-advanced;
2339 leaf authentication-password {
2340 description "User's authentication password";
2345 leaf authentication-key {
2346 description "Encrypted key used for user authentication";
2350 grouping priv-object {
2351 description "Privacy parameters";
2352 uses apply-advanced;
2353 leaf privacy-password {
2354 description "User's privacy password";
2360 description "Encrypted key used for user privacy";