The calculated distance (air line) between Garissa and Machakos is approximately 180 miles respectively 290 kilometers.
By car or train, the actual journey to Machakos is certainly longer, as only the direct route (as the crow flies) between Garissa and Machakos has been calculated here.