How can I force SSH to ignore the IdentityFile listed in "Host *" for one specific host?
Solution 1:
A Host
line can have more than one pattern. And it's not really spelled out in the documentation, but a "!" (exclamation) at the beginning of a pattern means "if a host matches this pattern, then don't apply the section". In other words, you can do this:
Host * !special1 !special2
IdentityFile etc...
And it should match any host except "special1" and "special2".
I don't think the order of the patterns is important. The hostname being checked has to match one non-exclamation pattern, and it has to not match any exclamation patterns.