wifi와 3g를 모두 사용하고 싶을때.
두 인터페이스를 모두 연결시켰는데
방법이 wifi를 켜진다음 거기에서 3g를 강제로 키고 있는데, 일단 여기까지는 성공하였지만
3g를 통해서 packet이 이동하지 않습니다. 지금 문제가 route table이 제대로 생성 안되었는걸로
보이는데 그래서
socket bind를 통해 연결해보려고
소켓 생성후 바인드를 한후 connect를 하려고 했는데 바인드까지는 되는거 같는데
connect를 하지 못하는거 같습니다.
3g가 연결 되면 통신사의 ggsm에 연결하여 사설 ip를 할당받는다고 하는데,
connect에 사용해야할 ip를 어떻게 얻어오는지 모르겠습니다.
NetworkInterface nif = NetworkInterface.getByName("rmnet0");
Log.d(TAG_LOG,"Interface detected S" + nif );
Enumeration nifAddresses = nif.getInetAddresses();
Log.d(TAG_LOG,"Interface IP Address Retrieved S: " + nifAddresses );
Socket socket = new Socket();
try{
socket.bind(new InetSocketAddress(nifAddresses.nextElement(), 1027));
socket.connect(new InetSocketAddress(addr, 80), 5000);
}
그럼 수고하세요.
댓글 달기