Hi Arul,
Java 8 has server-side SNI support which you can use to do this
without one IP per certificate. Most web browsers support SNI, the
notable exceptions are IE running on Windows XP and some old versions
of Android, however, usage of these is declining.
I've thrown together a minimal example of how to do it on GitHub:
https://github.com/grahamedgecombe/netty-sni-example
It works by creating a custom KeyManager implementation, which
forwards most of the method calls onto Java's default KeyManager
implementation (which in turn reads the certificates/keys from the JKS
file). However, it overrides the chooseEngineServerAlias() function
and adds logic to choose the certificate alias to use based on the
hostname requested via SNI:
https://github.com/grahamedgecombe/netty-sni-example/blob/master/src/main/java/SniKeyManager.java#L41
Graham