내 질문은 유사하다 이 하나 ,하지만 약간 다른 뭔가를 찾고 있어요. 두 가지 시나리오에서 네트워크의 Linux 시스템에 액세스하는 데 사용하는 노트북 PC가 있습니다.
네트워크에 직접 유선으로 연결되어 있습니다.
네트워크에 간접적으로 연결되어 있습니다. 네트워크에 인터넷에 노출 된 게이트웨이 시스템이 있는데, 네트워크의 호스트에 SSH 터널을 설정하는 데 사용할 수 있습니다. 이것은 분명히 훨씬 느리고 지연 시간이 긴 연결입니다.
내 홈 디렉토리는 모든 컴퓨터에서 네트워크에 액세스 할 수 있으므로 내 사본을 공유합니다 .bashrc
. .bashrc
두 가지 시나리오 중 어느 시나리오에 있는지 감지하고 그에 따라 행동하는 기능을 추가하고 싶습니다 (기술적으로 세 가지 시나리오가 있습니다. 세 번째 시나리오는 로컬 컴퓨터에 로그인하고 있지만 쉽게 처리해야 함). ). 나는 다음과 같은 일을하고 싶다 :
alias ssh ssh -X
로컬 네트워크에 있지만 인터넷을 통해 X 전달을 사용하고 싶지 않습니다.export EDITOR=gvim
로컬 네트워크에 있지만export EDITOR=vim
원격에있을 때는
등등. 이전 답변을 바탕으로 SSH_CLIENT
(있는 경우) 내용을 확인 하고 클라이언트 IP 주소가 로컬 컴퓨터의 네트워크 어댑터 중 하나와 일치하는지 확인하여 이와 같은 것을 수행 할 수 있어야 합니다. 나는 이것을 달성하기 위해 더 매끄 럽거나 더 견고한 방법이 있는지 알 것이라고 생각했다.