The problem is the 14th Amendment.
Along with all of the good things established by the 14th Amendment, came one glaringly awful consequence. Whether intentional or not, the 14th Amendment has long been interpreted to extend the Bill of Rights to apply to the individual states, and IMO that was a huge mistake. Mostly because I'm a staunch strict constructionist and Jeffersonian advocate for state's rights. The original intent of the Bill of Rights was to limit the powers of the federal government when it comes to infringing on both individual liberty AND the rights of the states to govern themselves. It was never intended to apply to state governments in any way. Applied as intended, and without the undue obfuscation caused by the 14th Amendment, the 2nd Amendment says that any and all federal laws restricting the right to bear arms is unconstitutional, however the individual states are free to restrict the right to bear arms within their borders as they see fit and in accordance with their own constitutions.
As it should be.