Modifying Huge ACL & prefix- list ?

Probably, there are multiple way to achieve your goal.
Here is one of simple way that I knew and used in my work. (using vi editor)


For example, you have IP blocks below. Current prefix list name = Hello

— Raw list —
1.1.1.1/24
2.2.2.2/23
3.3.3.3/22
4.4.4.4/21
5.5.5.5/20
6.6.6.6/19
:
:
:


1. Create new file with vi editor = from prompt "vi acl" (on unix or linux)
2. Copy and paste entire list of new IP blocks into the new file just created
3. To add "ip prefix-list Hello permit" in front of raw IP blocks, follow below step

:%s/^/ip prefix-list Hello permit /g
(If you are not familiar with vi editor, search ‘vi editor’ on Internet)


Now, you will see the below

ip prefix-list Hello permit 1.1.1.1/24
ip prefix-list Hello permit 2.2.2.2/23
ip prefix-list Hello permit 3.3.3.3/22
ip prefix-list Hello permit 4.4.4.4/21
ip prefix-list Hello permit 5.5.5.5/20
ip prefix-list Hello permit 6.6.6.6/19
:
:


4. To add "le 32" or any option, follow below steps

:%s/\/24/\/24 le 32/g <——- it will modify /24 IP block
ip prefix-list Hello permit 1.1.1.1/24 le 32
ip prefix-list Hello permit 2.2.2.2/23
ip prefix-list Hello permit 3.3.3.3/22
ip prefix-list Hello permit 4.4.4.4/21
ip prefix-list Hello permit 5.5.5.5/20
ip prefix-list Hello permit 6.6.6.6/19


5. Using the blow commands, complete modifying entire IP blocks.

:%s/\/32/\/32 orlonger;/g
:%s/\/30/\/30 orlonger;/g
:%s/\/29/\/29 orlonger;/g
:%s/\/28/\/28 orlonger;/g
:%s/\/27/\/27 orlonger;/g
:%s/\/26/\/26 orlonger;/g
:%s/\/25/\/25 orlonger;/g
:%s/\/24/\/24 orlonger;/g
:%s/\/23/\/23 orlonger;/g
:%s/\/22/\/22 orlonger;/g
:%s/\/21/\/21 orlonger;/g
:%s/\/20/\/20 orlonger;/g
:%s/\/19/\/19 orlonger;/g
:%s/\/18/\/18 orlonger;/g
:%s/\/17/\/17 orlonger;/g
:%s/\/16/\/16 orlonger;/g
:%s/\/15/\/15 orlonger;/g
:%s/\/14/\/14 orlonger;/g
:%s/\/13/\/13 orlonger;/g
:%s/\/12/\/12 orlonger;/g
:%s/\/11/\/11 orlonger;/g
:%s/\/10/\/10 orlonger;/g


Final IP blocks look like below

ip prefix-list Hello permit 1.1.1.1/24 le 32
ip prefix-list Hello permit 2.2.2.2/23 le 32
ip prefix-list Hello permit 3.3.3.3/22 le 32
ip prefix-list Hello permit 4.4.4.4/21 le 32
ip prefix-list Hello permit 5.5.5.5/20 le 32
ip prefix-list Hello permit 6.6.6.6/19 le 32


It is help only huge huge huge list of access list or prefix list.
After modifed raw IP list, add it to current access list or prefix

Leave a Reply