Я бы обычно достигал этого с помощью обратного прокси-сервера, но если вы действительно хотите определить его в своем сервлете, это не проблема ...
Вот пример, который поможет вам управлять этим с помощью фильтра.
http://www.java2s.com/Code/Java/Servlets/IPFilter.htm
Обратите внимание, что он не включает записи web.xml, которые будут выглядеть примерно так:
<filter>
<filter-name>IPFilter</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>IPFilter</filter-name>
<servlet-name>MyServlet123</servlet-name>
</filter-mapping>
Если вы используете Spring (как в классе фильтра выше), вы можете использовать Spring DelegatingFilterProxy, чтобы упростить решение и предоставить вашему фильтру доступ к другим bean-компонентам вашего applicationContext (потенциально загружать клиентские IP-адреса из свойства или даже база данных):
http://static.springsource.org/spring/docs/2.0.x/api/org/springframework/web/filter/DelegatingFilterProxy.html
НТН