Put the milk in a heavy saucepan over a low heat, and add the bay leaf, peppercorns and onion. Cook for about 5 minutes, letting it come slowly to simmering point. Remove the pan from the heat, and strain the milk into a jug, discarding the flavourings.
Melt the butter gently in a separate pan. As soon as the butter melts, add the flour and, over a medium heat, stir quite vigorously using a wooden spoon to make a smooth paste, or roux.
Add the milk a little at a time, stirring vigorously between each addition. When about half the milk is in, switch to a whisk and start adding more milk at a time, whisking briskly, until all the milk has been added.
Reduce the heat to low, and let the sauce simmer gently for 5 minutes, whisking occasionally. Season with salt and pepper.