원격 호스트(edgemarc 4200 또는 4500 시리즈 라우터)에 SSH로 연결하고 arp 데이터 가져오기

원격 호스트(edgemarc 4200 또는 4500 시리즈 라우터)에 SSH로 연결하고 arp 데이터 가져오기

며칠 동안 이를 수행하는 방법을 생각해 보았으나 아직 아무것도 나오지 않았습니다. 이상적으로는 다음과 같이 하려고 합니다.

Windows XP 컴퓨터에서 원격 호스트에 대한 SSH 연결을 열고 arp 명령을 보낸 다음 클라이언트에서 사용할 수 있도록 명령의 텍스트 결과를 다시 가져와야 합니다. 이 데이터를 구문 분석하고 IP 및 MAC 주소의 2D 배열을 생성해야 합니다. 공유 키는 없으며 이 모든 작업은 항상 다른 사용자 이름과 비밀번호로 수행됩니다. WAN IP를 기반으로 하는 autoit 스크립트를 사용하여 데이터베이스에서 가져올 변수를 통해 명령에 입력해야 합니다. 원격 호스트.

이제 arp 테이블의 텍스트만 얻을 수 있다면 데이터의 실제 구문 분석과 배열 생성이 쉬워질 것입니다. 원격 호스트로 SSH를 통해 명령을 실행하고 배치 스크립트나 Perl 스크립트를 통해 해당 명령의 데이터를 클라이언트에 반환할 수 있는 방법이 있습니까? 텍스트를 파일에 쓰면 괜찮습니다. 파일을 나중에 클라이언트에 전달하려면 필요합니다)?

답변1

PuTTY 사용 plink:

plink <server> arp

그래도 작동하지 않는 경우:

echo arp | plink <server>

시스템이 Linux를 실행 중이고 ip명령을 사용할 수 있는 경우 해당 명령을 사용하십시오. 형식을 구문 분석하기가 더 쉽습니다.

plink <server> /sbin/ip -o -f inet neigh

plink <server> /sbin/ip -o -f inet6 neigh

답변2

PuTTY를 사용하면 다음과 같이 사용자 이름과 비밀번호를 지정할 수 있습니다.

  • putty -pw 비밀번호 사용자 이름@호스트 이름

또한 "-m" 명령줄 스위치를 사용하면 연결 후 서버에서 실행하기 위해 명령을 읽을 텍스트 파일을 지정할 수도 있습니다.

여기에서 PuTTY를 다운로드할 수 있습니다.

  PuTTY(무료 및 오픈 소스)
  http://www.chiark.greenend.org.uk/~sgtatham/putty/

관련 정보