BGP notes on large scale networking for internal redistribution

There are many ways to configure BGP and for the most part and small networks you can follow the Cisco link.

For those that use slightly larger networks here are a few suggestions:

Get familiar with ip bgp-community new-format.

I would suggest differeciating between connect static rip(static-dial) for insternal and 
private peers, public peers, and transit for external.

For internal you might consider using something like this:

router bgp XXXX
no sync
redist connected route-map connected-redist 
redist static route-map static-redist
redist rip route-map rip-redist
neighbor(s)
no auto

access-list 1 permit any # to match all connected and statics
access-list 2 deny any # add permits for customer BGP you may want to advertize
access-list 3 permit # static_customer_blocks
access-list 3 deny any # the dynamic blocks should be static routes to Loop0

route-map connected-redist deny 10
match interface Loopback0
route-map connected-redist permit 20
match ip address 1
set community XXXX:1

route-map static-redist permit 10
match ip address 2
set community XXXX:2
route-map static-redist permit 20
match ip address 1
set community XXXX:3

route-map rip-redist permit 10
match ip address 3
set community XXXX:4

Note that community XXXX:1,3,4 are internal and should probably not be leaked to the global internet.
The exception to this is staticly routing your aggregate blocks on a few or several of your backbone routers.
You may want to have another sequence in route-map static-redist that matches an extended access-list such as

route-map static-redist permit 5
match ip address 101
set community XXXX:5

XXXX:5 can be mathed at peers to announce your routes to them.

access-list 101 permit ip host x.x.x.x host x.x.x.x (aggregate netmask)
access-list 101 permit etc....