Basically, I'm trying to configure my server as "filter point".
If I do traceroute to my server lets say I will get:
I want to put my own server before my back-end, is it possible to do without contacting the datacenter or touching BGP or anything like that? So it will be like that:
I basically want to route all my traffic through this server before the back-end.
If you don't (or can't) manipulate your infrastructure at a network level, you're not going to be able to change the results of a traceroute.
However, you can still setup a configuration where the traffic bound for a destination goes through an intermediate server by using proxy software.
A popular example is nginx.
For example, I have a proxy server setup at home that helps provide a single landing page for multiple services across different machines. From the outside world, all traffic is bound for the proxy and behind the proxy traffic is forwarded to the appropriate server based on URL pattern matching.
Basically, the setup looks like:
+---------+
| |
| Client |
| |
+---+-----+
|
v
+----------+
| |
| Internet |
| |
+---+------+
| +----------+
v | |
+-----> | Server A |
+-------+ | | |
| +-----> home.url/servicea + +----------+
| Proxy |
| +-----> home.url/serviceb + +----------+
+-------+ | | |
+-----> | Server B |
| |
+----------+
The nginx proxy inspects the URL the client provides and forwards to the correct server based on matching rules.
A simple approximation of the configuration would be:
server {
location /servera {
proxy_pass http://servera:80;
}
location /serverb {
proxy_pass http://serverb:80;
}
}