Name and shame, that's the way to go.
Sri Lankans unfortunately have no sense of the notions of equality or humanity, nor values. They only care for money.
The only reason they do this is because of money. They prefer caucasians because they are easier to scam, easier to surcharge and take advantage of in general. Not because they love white ass. Whereas subcontinent people are less likely to be ripped off by a scammer. Normally places that have "foreigners only" signs are scams.
There also seem to be foreigners-only night clubs in these areas, where the security won't let locals go inside. Since these places have no registration and are run by local thugs, and since there are no anti-discrimination laws in failed states, they are no means of legal discourse.
The other problem is that the state is also involved in discrimination by putting different pricing for entry on the basis of nationality.
They need to get rid of this forever-begger-nation-so-rich-countries-should-pay-more attitude, even though they would probably stay beggars for the forseeable future.
------ Post added on Jan 15, 2022 at 8:07 PM