I like guns. Living in New York City, without a car, makes gun ownership a problem, but if I lived in a locale that was friendlier to gun ownership, I would own some.
However, I don't like the NRA. It has become obsessed with it's own wealth and survival, not about getting things done.
I propose we do a simple trade. Ignore the rhetoric and solve two of the major desires of the NRA and one of the anti-gun lobby.
How can I do this? Simple. Take them both at their word and craft a law that does what they need while at the same time dealing with the valid objections of their opponents.
Make the law three parts, and clearly state that if one part is thrown out, the other goes with it.
Part 1. A Federal Concealed Carry permit. It is just plain silly that you need to get each individual states carry permit, if you happen to be traveling.
Part 2. A private gun registration system, administered by the states. That is, the states license private corporations to act as registrars for guns. If you buy or sell a gun, you must register the purchase or sale with the private gun registration of your choice, licensed by the state you live in.. That gun registrar is required by law to a) tell the federal government and the state you live in the gun's serial number has been bought/sold. b) never identify the current owner of the gun without a warrant. c) to identify the gun if a legal warrant is presented.
Part 3. Require every gun manufacturer to fire a test bullet for each gun's serial number, sending them to the federal government.
Note that the fact that both purchase and sale are required to be notified presents a good way to check up on the private companies- if company a registers a sale but company b does not register the buy, then the government knows something is off.
Let the states regulate the private registrars as they wish - with some kind of corporate licensing fee to fund the states regulation of the registrars. Then let the free market take care of everything.
Note that a) this protects gun owners rights to privacy, preventing the government from knowing who owns which guns, b) allows the police to accurate trace any weapon from any bullet found, and c) gets rid of bureaucrat bull crap that makes it difficult to legally transport guns.