A servlet can use getRemoteAddr() and getRemoteHost() to retrieve the IP Address and host of the client machine respectively:

 public String ServletRequest.getRemoteAddr()
  public Stirng ServletRequest.getRemoteHost()

Using these functions access to specific client host can be restricted. The sample code below checks the client specification at the server and send the relevant message to the client.

import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class DemoExportRestriction extends HttpServlet{

    public void doGet(HttpServletRequest req,HttpServletResponse res)
            throws ServletException,IOException{
        PrintWriter out= res.getWriter();
        //Getting the client's hostname
        String remoteHost = req.getRemoteHost();
        //See if the client is allowed
            out.println("Access <BLINK>ACCESS DENIED </BLINK>");
        } else{
            out.println("access granted");
    private boolean isHostAllowed(String host) {
                (host.indexOf('.')==-1);//no domain , assume OK
Parent Category: Java EE Tips