I try to develop IP router like application.

The problem is if the RAW IP socket binded to interface with bind() the received packet filtered with IP address of interface.
For example we have client and route like application in a same subnet 192.168.1.0/255.255.225.0. The default route for the client is the router like application (address of). The client send ip packet with destination 10.11.12.13 to router like application. The router like application binded to interface 192.168.1.254/255.255.225.0 and the socket discard it because not in the address range of the interface. But the router normally receive and forward this packet.

Any idea to solve this problem?