Where exactly does the problem exist ?
Nowhere. There is no problem.
With ping you are working only at the network layer and on this layer there is no such thing as a hostname, there are only IP addresses. And crashsafari.com
has the same IP address as s3-website-us-east-1.amazonaws.com
because this is just an alias (DNS CNAME):
$ dig crashsafari.com
...
;; ANSWER SECTION:
crashsafari.com. 59 IN CNAME crashsafari.com.s3-website-us-east-1.amazonaws.com.
crashsafari.com.s3-website-us-east-1.amazonaws.com. 59 IN CNAME s3-website-us-east-1.amazonaws.com.
s3-website-us-east-1.amazonaws.com. 4 IN A 54.231.17.132
But when using a browser to access a site you are using the application layer protocol HTTP instead. Within this protocol the hostname is sent by the client (HTTP Host header) and thus different hostnames with the same IP address can be distinguished by the server. A request to http://crashsafari.com
looks like this:
GET / HTTP/1.1
Host: crashsafari.com
...
whereas a request to http://s3-website-us-east-1.amazonaws.com
looks like this:
GET / HTTP/1.1
Host: s3-website-us-east-1.amazonaws.com
...
And based on the Host header the server will use a configuration specific for the given hostname, which makes both sites look different even if they share the same IP address.