# Does the nodes need private networking between servers?

**URL:** <https://discuss.elastic.co/t/does-the-nodes-need-private-networking-between-servers/59741>\
**Category:** Elasticsearch\
**Created:** [September 4, 2016, 3:26am UTC](https://discuss.elastic.co/t/does-the-nodes-need-private-networking-between-servers/59741 "2016-09-04T03:26:37Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Shrimp-Fried-Rice](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/shrimp-fried-rice/32/33360_2.png) [@Shrimp-Fried-Rice](https://discuss.elastic.co/u/Shrimp-Fried-Rice)\
**Post date:** [September 4, 2016, 3:26am UTC](https://discuss.elastic.co/t/does-the-nodes-need-private-networking-between-servers/59741/1 "2016-09-04T03:26:37Z")

</div>

Hi all.,

lets say i am creating cluster of 5 nodes .

all are in the same Data Center and each having 16 GIGs of RAM.

1. Does the nodes needs local IP and private networking or they can communicate with each other over internet using public ip ?

2. Is this good practice if i set cluster in One Data-center while Application in different region which will be using REST-api to query the cluster  
a) what are the drawback in this case ?  
b) how much delay can i expect ? in receiving the reply from cluster ?  
c) is anybody else doing something like this ?

Thanks for your time. have a great day ahead.,

---

<div class="post-metadata">

**Author:** ![nik9000](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/nik9000/32/44947_2.png) [@nik9000](https://discuss.elastic.co/u/nik9000)\
**Post date:** [September 4, 2016, 11:50am UTC](https://discuss.elastic.co/t/does-the-nodes-need-private-networking-between-servers/59741/2 "2016-09-04T11:50:45Z")

</div>

Elasticsearch shouldn't be publicly accessible over the internet. It is too  
easy to craft bad requests and, without extra stuff, doesn't have  
authentication. This doesn't mean it needs private NICs or anything, just  
binding to a non public IP.

You can totally use the http API from another DC. At that point it is just  
an ok there application in another DC so you have normal connectivity and  
latency concerns, but nothing special. Forming a cluster across DCs is  
still not a great choice.

---

<div class="post-metadata">

**Author:** ![Shrimp-Fried-Rice](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/shrimp-fried-rice/32/33360_2.png) [@Shrimp-Fried-Rice](https://discuss.elastic.co/u/Shrimp-Fried-Rice)\
**Post date:** [September 21, 2016, 2:14pm UTC](https://discuss.elastic.co/t/does-the-nodes-need-private-networking-between-servers/59741/3 "2016-09-21T14:14:26Z")

</div>

Thank you for your reply.

i feel kind of lost here,

When you say "easy to craft bad requests" , does it mean, people can drop my indexes ?  
i am asking this, because i wont be having any important data on the server, just titles and tags and using for Fulltext searches.

one more thing, " binding to a non public IP " isnt it same as using private networking between servers ?

i am confused.

Thanks for your time.  
have a great day ahead.

---

<div class="post-metadata">

**Author:** ![nik9000](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/nik9000/32/44947_2.png) [@nik9000](https://discuss.elastic.co/u/nik9000)\
**Post date:** [September 21, 2016, 2:40pm UTC](https://discuss.elastic.co/t/does-the-nodes-need-private-networking-between-servers/59741/4 "2016-09-21T14:40:01Z")

</div>

> [@Shrimp-Fried-Rice](#):
>
> one more thing, " binding to a non public IP " isnt it same as using private networking between servers ?

I thought of "private network" as some kind of electrically isolated network. All that matter is that requests from the internet can't be routed into Elasticsearch. They have to go through your server.

> [@Shrimp-Fried-Rice](#):
>
> people can drop my indexes ?

If you can send any request, sure. Elastic has a security [product](http://www.elastic.co/products/shield) that'll add ACLs and stuff which helps, but I still wouldn't allow the internet to hit your Elasticsearch server.

By bad requests I mean that you can write search requests that consume tons and tons of resources. In 5.0 it is better, we have protection against bad aggregations. But it is still possible to write really slow search requests. You really should have an application between Elasticsearch and the internet.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 5, 2017, 10:18pm UTC](https://discuss.elastic.co/t/does-the-nodes-need-private-networking-between-servers/59741/5 "2017-07-05T22:18:30Z")

</div>


