What we know for certain is that shooting down a civilian airliner is not a rational act for either side, except as a false-flag operation to blame the other.
Thus, whoever’s launcher fired the missile, it was either an error or a false-flag operation.
Russia is itching to get a casus belli to launch a full-scale invasion of Ukraine.
Cui Bono?
Actually there is yet a third possibility. We now have videos showing chaff falling down on the wreckage site. So a military plane could have been near the commercial flight, either due to circumstances or due to using the commercial flight as a screen. Then when a battery fired upon the military plane, it flew away dropping chaff near the commercial plane. The missile homed toward the chaff and exploded into the chaff or hit the commercial plane. Now the missile could have been fired by Ukraine or Ukraine Separatists. And the military plane could have been Ukraine or Russian. If true, we will probably never know what actually happened.