"repos" is short for repositories. In the world of Linux "distros" these are the sites where the software packages associated with a Unix/Linux distribution live.
Repos issues occur when a particular release starts to age, and loses support. There are other causes as well. Problems encountered and solutions found are documented below, along with plenty of links (which have their own problems with aging as well).
These are description files in /etc/yum.repos.d
Red-Hat - many times, if you are careful and know what to look out for, you can use CentOS RPMs and get away with it. I've done this in instances where a customer has critical stuff running on an unlicensed copy of RedHat and they can't pull RPMs with yum from the RedHat repos. (Comments on this anyone?)
See /etc/redhat-release (/etc/release) and then look in (Version 6.3 for example)
--nogpgcheck (disable gpg signature checking) comes in handy when messing with RPMs this way
For rpm it's
--nodigest don't verify package digest(s) --nosignature don't verify package signature(s)
Natty Repos - this link points to a Natty document, but at the time the link was added, the site had repo information for many other releases as well. Instructions for adding/managing repos as well.
Note: since Natty is old, the backports repository might be key...