In order to use Teredo you need a Teredo client, a Teredo server, and Teredo relays. And you need all of these deployed in the appropriate locations.
Teredo is designed to work through NAT, however it only provides a single IPv6 address per Teredo client, which is assigned to the host on which the Teredo client is running.
As such your router is not an appropriate location to deploy a Teredo client. It would provide IPv6 access to the router itself, but not to the LAN connected to it.
A laptop that connects to many different networks and needs IPv6 wherever it is can benefit from running a Teredo client, but it will only be able to connect to networks with a Teredo relay. (Third party relays exist, but do not provide a reliable service.)
Your router could however be an appropriate location to deploy a Teredo relay. You can deploy a Teredo relay on any host with a public IPv4 address. Assuming your router has a public IPv4 address, it can run a Teredo relay.
The benefit you gain from running a Teredo relay on your router is that it enables Teredo clients to communicate with IPv6 hosts on your LAN. That is of course only beneficial if your LAN has IPv6 support in the first place.
The miredo package can be used as either client or relay depending on how you configure it. In the default configuration it acts as client. Here is an example of what to put in /etc/miredo.conf to use it as relay:
InterfaceName teredo
RelayType relay
BindPort 64646
Do that, then restart miredo and you will have a functional relay.
In order to get IPv6 on your LAN, you have a few options. You can use 6to4, but that is not recommended due to 6to4 relays being underprovisioned.
A better option is to use a tunnel service. If your router have a public IPv4 address I recommend using tunnelbroker.net as your tunnel provider.