There are a number of different frames of references.
For the velocities of celestial objects we use: (i) The geocentric frame: This is a velocity measured with respect to the Earth's centre. Obviously this is quite useful for artificial satellites, but also for things like meteors. (ii) The heliocentric frame: this is the velocity as seen from the centre of mass of the Sun. Heliocentric corrections to measured velocities from the Earth correct for the Earth's rotation and the motion of the Earth relative to the Sun (corrections of order tens of km/s). This is often the frame used for stellar velocities. (iii) The barycentric frame: This is similar to the heliocentric frame, but now referred to the centre of mass of the solar system. The difference between the two is only of order 10m/s, but this is important when discussing the velocities of stars when looking for doppler shifts due to exoplanets. Also crucial when looking at timing analysis from pulsars. (iv) The local standard of rest: this is set to follow the mean motion of objects in the vicinity of the Sun. The Sun actually moves at about 20 km/s with respect to the defined LSR. This frame is often used for discussing the motions of objects in our Galaxy (orbits of stars around the centre etc.).
The speeds of extragalactic objects are usually heliocentric velocities - precision is not usually an issue. However if one wished to convert heliocentric/barycentric velocities to the frame of rest of the cosmic microwave background, then the solar-system baycentre moves at $368\pm 2$ km/s in the direction $l=263.85 \pm 0.10$, $b=48.25\pm 0.04$, where $l,b$ are the Galactic latitude and longitude in degrees.
Your last sentence is answered in the comments. The speed of light is a defined quantity and is the same in all frames of reference.