I've been playing around with FR mappings and noticed that the mappings require the address and LOCAL dlci, not the remote.
frame-relay map ip 192.168.1.1 201
The 192.x.x.x address is the remote router, but the 201 is the local router's dlci. Why is this? Am I mapping a way for 192.168.1.1 to get back to me through my dlci?
What you are suggesting here is exactly correct if the network is to be full mesh. In full mesh each router needs a unique DLCI for every peer in the Frame Relay network.
That's the reason your mappings didn't work yesterday.
If you see my GNS3 FRSW mappings, it should make sense to you. You had fewer mappings than mine. Check both .NET files and compare.
*EDIT* I went back and looked, and when configuring the router as a FRSW, you don't even need addresses on the FRSW interfaces, which makes my question even more confusing.
Why? It actually answers your question. You keep mixing IPs with DLCI.
The FRSW swaps|switches DLCI from incoming to outgoing. The CE routers will map a DLCI to an IP and send the packet out towards the FRSW. The FRSW does not care about the IP address information, just the DLCI.
And you want me to post more complicated FR configs? LOL
Think of it like this. Frame Relay like ATM can multiplex many different virtual circuits on the same physical link. With frame-relay the virtual circuits (vc) are identified with DLCIs.
So if the physical interface has many vc's using the frame-relay map ip command allows you to tell the router that to get to a specific remote address the data needs to be sent over specific vc and that vc has to be significant to the local router. That vc is a connection between the local router and the Frame switch. And you tell the Frame switch that data arriving on that vc is switched to the remote destination.
Hope this makes sense.