I suppose I could be a bit more specific...
I always try to do my mixes so that I don't really have to do anything at the Master stage, so my "mastering chain" is kind of just a little glue and some saturation which also accomplishes peak limiting. If I'm just doing a one-off, I will slap on the Master bus toward the end of the mix process and then render through it.
If I'm doing an album of separate songs, I will do that for each song, but then bypass the Master chain and render a floating point "for mastering" file. Then I put each of those "dry" files on a separate track in a new project, and lay them out across the timeline. Put a ReaEQ on each one, and insert the basic chain on the Master. Then I play through and bounce around "randomly" and adjust the individual track EQs and levels until they all feel like they belong on the same album and in the right order and both relative and absolute loudness is appropriate. I set the gap times, create regions, and then go from there to create the final distribution files.
The chain on the Master, like I said, is always simple:
ReaEQ - a "bookend" with HPF at 20 and LPF at 19K, and then a little "premphasis" almost always shelving down the bass and sometimes boosting some in the "air" frequencies. This is mostly about shaping the response of the compression that follows, and gets mostly undone.
ReaComp - with a long RMS time and a lookahead (precomp) in the middle of that window. I set the ratio as low as it goes, and widen the knee quite a bit and set the threshold so that it's almost always doing something but never really doing much. This is the exact opposite of the way most folks control their DR. It's not as exciting as clipping, but is much more transparent.
ReaEQ - another "bookend", but also
almost the opposite of the first, this one is "de-emphasis", but I find that I usually don't really want to go quite as far with this one. So, if I'm shelving the bass by -3db at the front, I might shelf it back up by 2db here. It has to be done by ear and by feel, but this instance can really just be used to make any final tweaks to the frequency response that you feel necessary.
lt_diode - the JS saturator plug that I wrote to use as a sort of module, which works really well in this situation. It talks in volts, and allows some extreme settings (in case you want to use it as the clipping section of a Rat pedal
), so it's a little weird for some people to use, but I have developed a "18V rail" preset that is slightly assymetrical and limits to somewhere around -1dbFS. This one is oversampled, though, so it's not really possible to say where the actual loudest peaks will be, so it is a process sometimes of rendering or playing all the way through to find the actual peak level, and then adjusting the Master fader to compensate, and then rendering again.
In a lot of ways, this is the equivalent of pushing the mix to a tape. Remember, the individual songs are already well-behaved and controlled and generally ready to go. What I'm doing now is making them sound like they live in the same space. In fact, I often mix in a little bit of continuous noise so that if you play straight through, it never actually goes silent, and you have a very subtle clue that the album is still playing. It's not really meant to emulate any specific analog gear, just kind of applying some of the principles.
If I'm dealing with other people's mixes, or trying to unfuck some of my previous disasters, I will start to get a lot more heavy handed, but in my mind that heads toward restoration, and is essentially a separate process from the actual mastering (technically pre-mastering) stage.