Parboil duck legs in boiling water for a minute. Alternatively, rub duck legs with a lot of salt, crushed ginger and a little of rice wine (or sake, white wine) to remove gamy odors, then rinse.
Add 4½ cups of water to a clean pot, then add 1/2 teaspoon of salt, ginger and duck legs. Let it come to a boil and then lower to a gentle simmer. Skim off any foam. Simmer gently for about 30 minutes with the lid slightly askew.
While cooking the duck legs, prepare the bamboo shoots (if using). Boil them in a lot of boiling water for 25-30 minutes to remove strong smell and taste. Then discard the liquid and rinse the bamboo shoots. Tear them into strips.
After 30 minutes of simmering, remove duck legs from the broth. Separate the bones from the meat and add the bones back to the broth, continue to simmer for another 20-30 minutes or until flavor is strong to your liking. Shred the meat.
Place a pan over medium heat. Add some olive oil and once the oil is hot, add shallots. Sauté until shallot is fragrant and starts to have some colors.
Add shredded bamboo shoots to the pan, give it a quick stir. Add fish sauce and stir and cook for several minutes. Sprinkle some black pepper on top. Transfer to a clean plate.
Add half (or all) of the sautéed bamboo shoots to the duck broth and simmer for 10 more minutes to let the flavors meld together. Skim off excess fat (but do leave some of the fat in broth for flavors). If too much water evaporates while simmering, add a little more water.
Prepare the dipping sauce by combining crushed ginger, garlic, fish sauce, rice vinegar and water in a small bowl. Adjust to your liking. You may even add a pinch of sugar if you want.
Place vermicelli noodles in serving bowls. Top with shredded duck meat, remaining sautéed bamboo shoots, thinly sliced fresh herbs and some black pepper. Ladle hot broth into serving bowls and serve immediately with the dipping sauce on the side.
When eating, add a small amount (more or less to taste) of dipping sauce to your bowl (or dip the shredded meat into the sauce). If you don't like the dipping sauce, you can just add plain fish sauce to season the broth to taste.