나의 Mac으로 돌아 가기 DNS를 사용하거나 명령 줄에서 라우팅 정보를 사용할 수 있습니까?


8

나는 종종 Mac에 ssh하고 싶고 iCloud를 사용하여 IP / DNS 라우팅 정보를 찾고 싶습니다. 동적 DNS 서비스에 가입하고 iCloud 외에 각 Mac에서이를 구성하지 않고도이 작업을 수행 할 수 있습니까?

가정의 호스트 이름에서 항상 사용하는 Mac이 "maui"이고 Snow Leopard를 실행한다고 가정 해 봅시다. 홈 네트워크에 연결된 랩톱에 있으면 할 수 있습니다 ssh maui.local. 가능 ssh maui.whatever.icloud.com하거나 무엇이든 작동하는 것이 좋을 것입니다. 내 계정으로 어떤 시스템에 도달해야하는지 알려주려면 "maui"와 iCloud 이름이 필요하다고 생각합니다.

API 또는 명령 줄을 통해 이것이 가능한지 아는 사람이 있습니까? 공개 개발자 정보를 여러 번 탐색했지만 유망한 것은 보이지 않습니다. 모든 포인터 또는 코드 예제를 환영합니다.

추신 이 질문에 대해 독점적으로 MobileMe에 관심이 있으므로 무료 DNS 계정을 제안하지 마십시오. 나는 그것들이 효과가 있다는 것을 알고 있지만이 Mac에 다른 계정이나 외부 계정 / 외부 종속성을 설치하지 않으려 고합니다.


멋진 아이디어, +1 나는 당신이 답을 얻길 바랍니다.
ConstantineK

개인 정보 보호 위험 때문에 Apple이 사용자를 노출시키지 않으려는 방법을 알 수 있지만 API를 사용하는 것이 좋습니다.
bmike

1
OS X 10.7 Lion의 동일한 문제 (약간 다릅니다)도 참조하십시오. apple.stackexchange.com/questions/53719/…
drfrogsplat

답변:


9

이것은 10.7로 약간 변경되었으며 IPv6을 거의 완전히 사용하므로 테스트 ping6하고 traceroute6디버깅합니다.

더 이상을 통해 수행되지 않고을 통해 @computername.mobilemename.members.mac.com수행되며 members.btmm.icloud.com더 이상 mobilemename.

1 단계 : iCloud BTMM 도메인 찾기

다음 명령 중 하나가 BTMM 도메인을 제공합니다.

# dns-sd -E
# mDNS -E

출력 형식이 약간 다르지만 이후에 나오는 것은 숫자 ID이며 다음과 같습니다 12345678.members.btmm.icloud.com.

2 단계 : 컴퓨터 나열

이 도구를 사용하여 ssh 서버와 같은 서비스에서 해당 도메인을 찾아 볼 수 있습니다.

# dns-sd -B _ssh 12345678.members.btmm.icloud.com

또는 이미 호스트 이름을 알고 있다면로 직접 액세스하십시오 computer-name.12345678.members.btmm.icloud.com. 컴퓨터 이름의 공백은이 도메인에서 하이픈이됩니다.

동일한 호스트에서 BTMM 용으로 설정된 컴퓨터 에서만 이 호스트에 액세스 할 수 있습니다. 이 호스트 이름은 실제로 BTMM 컴퓨터 사이의 암호화 된 네트워크 터널의 끝인 IPv6 주소로 해석되기 때문입니다.

특정 호스트의 IPv6 주소를 보려면 다음을 입력하십시오.

# dns-sd -G v6 computer-name.12345678.members.btmm.icloud.com

그리고 그것은 다음과 같이 출력됩니다 :

17:37:47.504  Add     2  0 computer-name.12345678.members.btmm.icloud.com. FD11:993E:64AE:4DEA:011F:FBD1:F444:11A1%<0>  152

3 단계 : 연결

# ssh username@computer-name.12345678.members.btmm.icloud.com

노트

그 숫자가 변경되는지 확실하지 않으므로 나중에 어느 시점에서 1 단계를 반복해야 할 수도 있고 아닐 수도 있습니다 ...


훌륭한! Lion에 맞게 질문을 편집 할 것인지 다른 질문을 할 것인지에 대해서는 미정입니다. 새 질문에 연결하여 라이온 질문에 "답변"할 수 있습니다.이 답변은 매우 유용합니다.
bmike


3

나는 나의 Mac으로 돌아 가기의 토대에 관한 몇 가지 기사를 읽었으며 일부 사람들은 ssh를 통해 효과적으로 연결되어 있다고 생각 합니다. 이 Macworld 게시물에 포함 된 토론을 확인하십시오 .

스레드에서 가장 좋은 게시물은 다음과 같습니다.

다른 사용자 이름으로 연결하려면 다음 형식을 사용하십시오.

ssh user.name@hostname.username.members.mac.com.

이 작업을 정기적으로 수행하고 ssh 및 scp에 대해 항상 사용자 이름을 사용해야하는 경우를 저장하려면 다음과 같은 내용으로 ~ / .ssh / config라는 파일을 작성하십시오.

호스트 hostname.username.members.mac.com. 사용자 user.name

호스트 host2.some.domain.com. 사용자 username2 포트 2222 LocalForward 3389 internal-pc : 3389

이 파일의 두 번째 호스트에는 22 이외의 포트를 사용하고 Remote Desktop Client를 사용하여 localhost에 연결하여 Remote Desktop이있는 internal-pc라는 Windows 컴퓨터에 액세스 할 수 있습니다.

분명히 애플은 .mac을 MobileMe로 전환했기 때문에 .me.com으로 전환했는지는 알 수 없으며 솔직히 테스트 할 MobileMe 계정이 없습니다.

편집 : 시도 할 수있는 또 다른 흥미로운 게시물은 veery bottom에 있습니다.

더 쉽다는 것이 밝혀졌습니다! :피

터미널을 열고 Shell> New Remote Connection ...으로 이동하십시오.

그런 다음 ssh를 선택하면 BackToMyMac 컴퓨터가 나열됩니다 (OS에서 볼 수있는 경우).

사용자 이름을 입력하고 연결을 클릭하십시오.

짜잔, 당신은 사용 된 연결 문자열을 볼 수 있습니다. 이 대화 상자에서 원격 Mac으로 ftp / sftp ...를 사용할 수도 있습니다.

원래 팁에서 제안한 것처럼 일부 쉘 명령을 입력하는 것보다 훨씬 쉽습니다.


슬프게도 이것은 나를 위해 작동하지 않습니다. 파인더와 화면 공유를 완벽하게 사용할 수 있으므로 계정과 컴퓨터가 작동하고 있음을 알 수 있습니다. 최신 펌웨어가있는 최신 Time Capsule은 두 Mac의 라우터입니다. 지난 2 주 동안이 작업을 한 사람이 있습니까?
bmike

핫 댕! 마지막 팁이었다. 핑과 호스트는 작동하지 않지만 ssh는 작동합니다. 그 터미널 끝은 굉장합니다.
bmike

단! 기쁘다.
ConstantineK

3

다음과 같이 "Bac to my Mac"이 활성화 된 컴퓨터로 ssh 할 수 있습니다.

ssh -p 22 username@computername.mobilemename.members.mac.com

1
기본 포트를 사용하도록 지시해야합니까?
ConstantineK

ping, host 및 ssh를 세 개의 다른 mobilemename을 가진 세 개의 별도 컴퓨터 이름으로 실패했습니다. host yy.xx.members.mac.com not found: 3(NXDOMAIN)호스트 시도에서 오류 가 발생하고 ssh: Could not resolve hostname yy.xx.members.mac.com: nodename nor servname provided, or not known세 가지 모두 핑, 호스트 및 ssh 시도가 실패하기 전과 후에 Mac 화면 공유로 돌아갑니다. 이것이 작동하기 위해 어떤 DNS 서버 IP를 사용하고 있습니까?
bmike

호스트와 핑이 작동하지 않더라도 ssh가 나를 위해 일하기 시작했습니다. 나는 조금 더 잘하고 더 나은 것으로 생각되면 답변을 표시 할 것입니다.
bmike

그리고 아니-나는 sftpssh를 위해 포트 번호를 불러 낼 필요가없는 것 같다. 그러나 그것들을 갖는 것이 크게 아프지 않다 ;-)
bmike

host시스템 확인자가 아닌 DNS 확인자를 사용하기 때문에 작동하지 않습니다. pingBTTM이 IPv6을 사용하기 때문에 작동하지 않습니다. ping6대신 시도 하면 응답하는 것을 볼 수 있습니다.
bahamat

2

확인을위한 IP 주소가 버전 6이기 때문입니다.

ping6 또는 traceroute6을 사용하면 호스트에도 연결할 수 있습니다.


정말 멋지다. 이것을 추가해 주셔서 감사합니다. 위의 답변에 본인의 정보를 추가해도 도움이 되나요? +2 to @pst
bmike

2

실행 가능한 솔루션을 모두 갖춘 호브홉페 에게 큰 감사를드립니다 . 주요 문제는 MobileMe Back to My Mac이 사용 가능한 경우 독점적으로 IPv6 주소 지정을 사용하므로 ping6 또는 traceroute6을 사용하지 않았으며 ssh는 IPv4 또는 IPv6을 해결하기에 충분히 똑똑하다는 것입니다.

ssh -p 22 username@computername.mobilemename.members.mac.com. 오늘 테스트에서 매우 안정적으로 작동합니다.

이 나를 넘어 때문에 내가 기대 한대로 pinghostnslookup일에, 나는 나를 위해 일한 무엇의 좋은 요약을 놓을 게요 그림. (사진과 함께!-난 정말 그림이 좋아)

요약하면 sftp, ssh, ping6, 및 traceroute6이름 지정 방식으로 작동합니다.

Apple의 내장 터미널 (및 iTerm )은 사용자 이름과 원격 짧은 이름이 올바른지 확인하는 데 좋습니다. 이름은 짧은 호스트 이름 ( hostname인쇄되는 이름 )이며 더 긴 공유 이름 Finder가 원격 Mac에 표시되는 것은 아닙니다.

짧은 호스트 이름

다음은 터미널이 실행중인 나의 Mac 컴퓨터로 돌아 가기를 발견 할 때 표시되는 내용입니다. 메뉴 항목은 New Remote Connection ... 이고 바로 가기는 Shift+ Command+ K입니다. 파인더 이름 "Mikey 's Mac" 이 짧은 호스트 이름 mi와 어떻게 다른지 보여줍니다.

여기에 이미지 설명을 입력하십시오


1
선별 검사 +1을 사용한 종합적인 답변
ConstantineK

P : 호브 한 B가
ConstantineK
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.