D-Link DES-3828 Product Manual - Page 150

CPU Interface Filtering, Packet Content

Page 150 highlights

xStack DES-3800 Series Layer 3 Stackable Fast Ethernet Managed Switch CLI Manual Now that an access profile has been created, you must add the criteria the Switch will use to decide if a given frame should be forwarded or filtered. Here, we want to filter any packets that have an IP source address between 10.42.73.0 and 10.42.73.255: config access_profile profile_id 1 add access_id 1 ip source_ip 10.42.73.1 port 1 deny Here we use the profile_id 1 which was specified when the access profile was created. The add parameter instructs the Switch to add the criteria that follows to the list of rules that are associated with access profile 1. For each rule entered into the access profile, you can assign an access_id that both identifies the rule and establishes a priority within the list of rules. A lower access_id gives the rule a higher priority. In case of a conflict in the rules entered for an access profile, the rule with the highest priority (lowest access_id) will take precedence. The ip parameter instructs the Switch that this new rule will be applied to the IP addresses contained within each frame's header. source_ip tells the Switch that this rule will apply to the source IP addresses in each frame's header. Finally, the IP address 10.42.73.1 will be combined with the source_ip_mask 255.255.255.0 to give the IP address 10.42.73.0 for any source IP address between 10.42.73.0 to 10.42.73.255. In the example used above - config access_profile profile_id 1 add access_id 1 ip source_ip 10.42.73.1 port 7 deny - a single access rule was created. This rule will subtract one rule available for the port group 1 - 8, as well as one rule from the total available rules. In order to address this functional limitation of the chip set, an additional function, CPU Interface Filtering, has been added. CPU Filtering may be universally enabled or disabled. Setting up CPU Interface Filtering follows the same syntax as ACL configuration and requires some of the same input parameters. To configure CPU Interface Filtering, see the descriptions below for create cpu access_profile and config cpu access_profile. To enable CPU Interface Filtering, see config cpu_interface_filtering. The xStack DES-3800 switch series has three ways of creating access profile entries on the Switch which include Ethernet (MAC Address), IP, and Packet Content. Due to the present complexity of the access profile commands, it has been decided to split this command into three pieces to be better understood by the user and therefore simpler for the user to configure. The beginning of this section displays the create access_profile and config access_profile commands in their entirety. The following table divides these commands up into the defining features necessary to properly configure the access profile. Remember these are not the total commands but the easiest way to implement Access Control Lists for the Switch. Command Parameters create access_profile [ethernet {vlan | source_mac | destination_mac | 802.1p | ethernet_type} profile_id ] config access_profile profile_id [add access_id [auto_assign | ] [ethernet {vlan | source_mac | destination_mac | 802.1p | ethernet_type } port [permit {priority {replace_priority} | deny | mirror] delete ] create access_profile ip [vlan | source_ip_mask | destination_ip_mask | dscp | [icmp {type | code} | igmp {type} | tcp {src_port_mask | dst_port_mask | flag_mask [all | {urg | ack | psh | rst | syn | fin}]} | udp {src_port_mask | dst_port_mask } | protocol_id {user _mask }]} profile_id ] config access_profile profile_id [add access_id [auto_assign | ] ip {vlan | source_ip | destination_ip | dscp | [icmp {type | code } | igmp {type } | tcp {src_port | dst_port | urg | ack | psh | rst | syn | fin} | udp {src_port | dst_port } | protocol_id {user_define }]} port [permit {priority {replace_priority} | replace_dscp } | deny | mirror] delete ] create access_profile packet_content_mask {offset_0-15 | offset_16-31 | offset_32-47 | offset_48-63 | offset_64-79 } profile_id } config access_profile profile_id [add access_id [auto_assign | ] packet_content {offset_0-15 | offset_16-31 | offset_32-47 | offset_48-63 146

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308
  • 309
  • 310
  • 311
  • 312
  • 313
  • 314
  • 315
  • 316
  • 317
  • 318
  • 319
  • 320
  • 321
  • 322
  • 323
  • 324
  • 325
  • 326
  • 327
  • 328
  • 329
  • 330
  • 331
  • 332
  • 333
  • 334
  • 335
  • 336
  • 337
  • 338
  • 339
  • 340
  • 341
  • 342
  • 343
  • 344
  • 345
  • 346
  • 347
  • 348
  • 349
  • 350
  • 351
  • 352
  • 353
  • 354
  • 355
  • 356
  • 357
  • 358
  • 359
  • 360
  • 361
  • 362
  • 363
  • 364
  • 365
  • 366
  • 367
  • 368
  • 369
  • 370
  • 371
  • 372
  • 373
  • 374
  • 375
  • 376
  • 377
  • 378
  • 379
  • 380
  • 381
  • 382
  • 383
  • 384
  • 385
  • 386
  • 387
  • 388
  • 389
  • 390
  • 391
  • 392
  • 393
  • 394
  • 395
  • 396
  • 397
  • 398
  • 399
  • 400
  • 401
  • 402
  • 403
  • 404
  • 405
  • 406
  • 407
  • 408
  • 409
  • 410
  • 411
  • 412
  • 413
  • 414
  • 415
  • 416
  • 417
  • 418
  • 419
  • 420
  • 421
  • 422
  • 423
  • 424
  • 425
  • 426
  • 427
  • 428
  • 429
  • 430
  • 431
  • 432
  • 433
  • 434
  • 435
  • 436
  • 437
  • 438
  • 439
  • 440
  • 441
  • 442
  • 443
  • 444
  • 445
  • 446
  • 447
  • 448
  • 449
  • 450
  • 451
  • 452

xStack DES-3800 Series Layer 3 Stackable Fast Ethernet Managed Switch CLI Manual
146
Now that an access profile has been created, you must add the criteria the Switch will use to decide if a given frame should be
forwarded or filtered. Here, we want to filter any packets that have an IP source address between 10.42.73.0 and 10.42.73.255:
config access_profile profile_id 1 add access_id 1 ip source_ip 10.42.73.1 port 1 deny
Here we use the
profile_id 1
which was specified when the access profile was created. The
add
parameter instructs the Switch to add
the criteria that follows to the list of rules that are associated with access profile 1. For each rule entered into the access profile, you
can assign an
access_id
that both identifies the rule and establishes a priority within the list of rules. A lower
access_id
gives the rule
a higher priority. In case of a conflict in the rules entered for an access profile, the rule with the highest priority (lowest
access_id
)
will take precedence.
The
ip
parameter instructs the Switch that this new rule will be applied to the IP addresses contained within each frame’s header.
source_ip
tells the Switch that this rule will apply to the source IP addresses in each frame’s header. Finally, the IP address
10.42.73.1
will be combined with the
source_ip_mask
255.255.255.0
to give the IP address 10.42.73.0 for any source IP address
between 10.42.73.0 to 10.42.73.255.
In the example used above - config access_profile profile_id 1 add access_id 1 ip source_ip 10.42.73.1 port 7 deny – a single access
rule was created. This rule will subtract one rule available for the port group 1 – 8, as well as one rule from the total available rules.
In order to address this functional limitation of the chip set, an additional function,
CPU Interface Filtering
, has been added. CPU
Filtering may be universally enabled or disabled. Setting up CPU Interface Filtering follows the same syntax as ACL configuration
and requires some of the same input parameters. To configure CPU Interface Filtering, see the descriptions below for
create cpu
access_profile
and
config cpu access_profile
. To enable CPU Interface Filtering, see
config cpu_interface_filtering
. The xStack
DES-3800 switch series has three ways of creating access profile entries on the Switch which include
Ethernet
(MAC Address),
IP
,
and
Packet Content
. Due to the present complexity of the access profile commands, it has been decided to split this command into
three pieces to be better understood by the user and therefore simpler for the user to configure. The beginning of this section displays
the
create access_profile
and
config access_profile
commands in their entirety. The following table divides these commands up into
the defining features necessary to properly configure the access profile. Remember these are not the total commands but the easiest
way to implement Access Control Lists for the Switch.
Command
Parameters
create access_profile
[ethernet {vlan | source_mac <macmask> | destination_mac <macmask> | 802.1p
| ethernet_type} profile_id <value 1-255>]
config access_profile profile_id
<value 1-255> [add access_id [auto_assign | <value 1-65535>] [ethernet {vlan
<vlan_name 32> | source_mac <macaddr> | destination_mac <macaddr> | 802.1p
<value 0-7> | ethernet_type <hex 0x0-0xffff>} port <portlist> [permit {priority
<value 0-7> {replace_priority} | deny | mirror] delete <value 1-65535>]
create access_profile
ip [vlan | source_ip_mask <netmask> | destination_ip_mask <netmask> | dscp |
[icmp {type | code} | igmp {type} | tcp {src_port_mask <hex 0x0-0xffff> |
dst_port_mask <hex 0x0-0xffff> | flag_mask [all | {urg | ack | psh | rst | syn | fin}]} |
udp {src_port_mask <hex 0x0-0xffff> | dst_port_mask <hex 0x0-xffff>} |
protocol_id {user _mask <hex 0x0-0xffffffff>}]} profile_id <value 1-255>]
config access_profile profile_id
<value 1-255> [add access_id [auto_assign | <value 1-65535>] ip {vlan
<vlan_name 32> | source_ip <ipaddr> | destination_ip <ipaddr> | dscp <value 0-
63> | [icmp {type <value 0-255> | code <value 0-255>} | igmp {type <value 0-
255>} | tcp {src_port <value 0-65535> | dst_port <value 0-65535> | urg | ack | psh
| rst | syn | fin} | udp {src_port <value 0-65535> | dst_port <value 0-65535>} |
protocol_id <value 0 - 255>
{user_define <hex 0x0-0xffffffff> }]} port <portlist>
[permit {priority <value 0-7> {replace_priority} | replace_dscp <value 0-63>} | deny
| mirror] delete <value 1-65535>]
create access_profile
packet_content_mask {offset_0-15 <hex 0x0-0xffffffff> <hex 0x0-0xffffffff> <hex
0x0-0xffffffff> <hex 0x0-0xffffffff> | offset_16-31 <hex 0x0-0xffffffff> <hex 0x0-
0xffffffff> <hex 0x0-0xffffffff> <hex 0x0-0xffffffff> | offset_32-47 <hex 0x0-0xffffffff>
<hex 0x0-0xffffffff> <hex 0x0-0xffffffff> <hex 0x0-0xffffffff> | offset_48-63 <hex
0x0-0xffffffff> <hex 0x0-0xffffffff> <hex 0x0-0xffffffff> <hex 0x0-0xffffffff> |
offset_64-79 <hex 0x0-0xffffffff> <hex 0x0-0xffffffff> <hex 0x0-0xffffffff> <hex 0x0-
0xffffffff>} profile_id <value 1-255>}
config access_profile profile_id
<value 1-255> [add access_id [auto_assign | <value 1-65535>] packet_content
{offset_0-15 <hex0x0-0xffffffff> <hex 0x0-0xffffffff> <hex 0x0-0xffffffff> <hex 0x0-
0xffffffff> | offset_16-31 <hex 0x0-0xffffffff> <hex 0x0-0xffffffff> <hex 0x0-0xffffffff>
<hex 0x0-0xffffffff> | offset_32-47 <hex 0x0-0xffffffff> <hex 0x0-0xffffffff><hex 0x0-
0xffffffff> <hex 0x0-0xffffffff> | offset_48-63 <hex 0x0-0xffffffff> <hex 0x0-0xffffffff>