내 Linksys 라우터가 컴퓨터 (PC 및 Mac 및 Linux)에 고정 로컬 IP를 할당하지 않았으므로 매분마다 컴퓨터가 서로 업데이트되도록 스크립트를 작성하고 싶습니다.192.168.1.102와 같은 로컬 IP 주소를보고하는 프로그램 작성 방법은 무엇입니까?
각 시스템에서 http://localhost/list.html모든 PC 및 Mac과 아파치 서버에 대한 링크 (http://192.168.1.102를 가리키는 등)
가 로컬 IP 주소를 찾을 수있는 방법 모양의 이름 목록을 포함합니다 PC에서 ipconfig를 사용하고 Mac 및 Linux에서 ifconfig를 사용하고 프로그래밍 방식으로 수행하려면 gethostbyname()을 사용합니다.
하지만 루비에 시도, 그
irb(main):001:0> require 'socket'
=> true
irb(main):002:0> p Socket::gethostbyname("localhost")
["Core2Duo", [], 2, "\177\000\000\001"]
irb(main):005:0> p Socket::gethostbyname("core2duo")
["Core2Duo", [], 2, "\300\250\001g"]
=> nil
및 IPCONFIG 실제로
IPv4 Address. . . . . . . . . . . : 192.168.1.103
그래서이 그것을 할 올바른 방법입니다
을 보여줍니다? 나는 루비에서 "ipconfig"를 실행하여 해킹 할 수 있으며 정규식을 사용하여 결과를 얻는다. 그러나보다 표준적인 방법으로 그것을 수행하는 것이 좋다. 당신은 사용하여 Java에서이 작업을 수행 할 수 있습니다
내 넷기어 라우터가 각 컴퓨터에 고정 된 로컬 IP를 할당 할 수는 있지만 ... 링크시스 라우터가 더 안정적이라는 것을 알았습니다. 제 친구는 무선 -n이있는 그의 d-link 라우터가 빠르고 안정적이며 고정 된 로컬 IP를 할당 할 수 있다고 말했습니다. 어쩌면 내가 고려할 것입니다. 케이블 인터넷을 사용하여 속도를 높이고 DSL 인터넷을 사용하여 안정성을 확보하고 다른 라우터를 구입하십시오. –
Bonjour를 사용하면 고정 된 로컬 IP가 필요하지 않습니다. 호스트는 멀티 캐스트 DNS를 사용하여 IP 주소를 서로 알립니다. – sigjuice
Bonjour는 홈 네트워크에 적합합니다. 제한 및 차단으로 인해 회사 네트워크에 좋지 않습니다. – Joshua