Imo it's best if we all just forget the whole "nations" idea and start calling them by their nicknames, thus eliminating accusations of poaching from other countries and ill feeling thereafter. So, from now on now NZ, SA, Australia, England, Wales, France or Scotland, it's the All Blacks, Springboks, Wallabies, Roses (god, our one's crap), Dragons, Bleus and Thistles.
Seriously though, poaching confuses me on a pretty basic level for a number of reasons. I'd blame the players, but if you're capable of a standard of rugby that will earn you hundreds of thousands instead of a pittance, why shouldn't you? Patriotism don't mean ****. I'd blame unions and selectors, but it's they're job to put out the best team they can and why shouldn't they select qualified players? Okay, active poaching where players are lured abroad I object to...
The only solution I can think of is a more rigorous, universal selection policy, e.g. one parent rather than one grandparent, longer periods to qualify for the national team (five years, six? Enough to dissuade people who move for selection), maybe even a requirement to have lived in the country from an early age- 16 perhaps?