লিনাক্সের কোনও হোস্টনামের নাম রাখা কি সম্ভব?


90

লিনাক্সের কোনও হোস্টনামের নাম রাখা কি সম্ভব?

এটি বিভিন্ন উবুন্টু ফোরামে জিলিকিন জিজ্ঞাসা করেছেন:


হোস্টনেম ওরফে তৈরি করা কি সম্ভব? / ইত্যাদি / হোস্টের মতো বাছাই করুন, তবে আইপি অ্যাড্রেসের পরিবর্তে অন্যান্য হোস্ট-নেম সহ। যাতে এর মতো কিছু ফাইলের সাহায্যে আপনি "নকলহোস্ট 1" পিং করতে পারেন এবং এটি "রিয়েলহোস্ট" এ আবার ম্যাপ করা হবে এবং তারপরে "রিয়েলহোস্ট" একটি আইপি ঠিকানায় সমাধান করা হবে।

# Real host        # Aliases
realhost           fakehost1 fakehost2 fakehost3

কারো SSH সম্পর্কে উত্তর দেওয়া হয়েছে, কিন্তু পিং, ইত্যাদি সম্পর্কে না আমার মূল উদ্দেশ্য একটি জন্য একটি alias হিসাবে এটি ব্যবহার করা হয় Subversion সার্ভার। আমার ক্ষেত্রে, রিয়েলহোস্ট একটি গতিশীল আইপি ঠিকানার অধীনে। সুতরাং, "/ ইত্যাদি / হোস্ট" ওরফে কাজ করে না। আমি svn://my_svnserver/my_reposতার পরিবর্তে আমার সাবভার্সন সার্ভারটি অ্যাক্সেস করতে চাই svn://realhost/my_repos


আমার ধারণা আমি কিছু মিস করছি missing আপনি কি বলছেন যে আপনি / ইত্যাদি / হোস্টগুলি 10.0.3.4 এর মতো দেখতে পাচ্ছেন না কিছু host.org another.domain.com আপনাকে কোনও প্রোগ্রামেটিক কারণে কোনও রেফারেন্স ব্যবহার করতে হবে?
jim_m_ সীমা কোথাও

উত্তর:


56

ফোরামে যাদের অ্যাকাউন্ট নেই (বা লগইন করতে চান না) তাদের জন্য:

যদি আপনার মূল সমস্যাটি পিংয়ের নয় তবে এসএসএসের হয় তবে আপনি নিজের lines / .ssh / কনফিগারেশন এর মতো লাইন তৈরি / সম্পাদনা করতে পারেন:

Host fakehost1
  Hostname real-hostname

Host fakehost2
  Hostname real-hostname2

Host fakehost3
  Hostname real-hostname3

1
হোস্টনাম অংশটি একটি নতুন লাইনে থাকা দরকার। এখানে একটি কনফিগার ফাইল কীভাবে তৈরি করা যায় সে সম্পর্কে একটি ভাল টিউটোরিয়াল এখানে রয়েছে: mattryall.net/blog/2008/06/ssh-favourite-hosts
কোড কমান্ডার

1
ভাল কাজ, ধন্যবাদ। তবে অবশ্যই, এর চেয়ে ভাল সমাধান হ'ল ডিএনএসে নাম ব্যবহার করা হবে
ইউরা

31

লিনাক্স HOSTALIASES env ভেরিয়েবল সেট করে আলিয়াসিং সমর্থন করে।

echo "fakehost realhost" > /etc/host.aliases
echo "export HOSTALIASES=/etc/host.aliases" >> /etc/profile
. /etc/profile

তারপর তুমি পারো

ping fakehost

এনবি পিংয়ের জন্য আপনাকে এটি রুট হিসাবে সেট আপ করতে হবে, তবে আপনি যে কোনও অ্যাপ্লিকেশনের জন্য যে কোনও ব্যবহারকারী হিসাবে চলতে পারে তা কোনও ব্যবহারকারী হিসাবে এটি করতে পারেন। রুট যাও পিং suids।


3
উবুন্টু 12.04 :( এ আমার জন্য কাজ করেনি
দিমিত্রি কে

3
HOSTALIASES কেবলমাত্র এক্সিকিউটেবলের জন্য কাজ করে যার কাছে সেটুইড পতাকা সেট নেই। সুতরাং এটি পিংয়ের জন্য কাজ করবে না (যদি আপনি পিং চালানোর সময় ইতিমধ্যে রুট না হয়ে থাকেন)। আমার ধারণা, সেটআপ-এক্সিকিউটেবলকে ট্র্যাকিং এড়ানোর জন্য এটি করা হয়েছে, যার উদ্দেশ্য এটির চেয়ে আলাদা হোস্টের সাথে সংযোগ স্থাপন করতে পারে।
বরিস


7
এটি খুব কমই প্রত্যাশিত ফলাফলে শেষ হবে। HOSTALIASES শুধুমাত্র getaddrinfo (3) বা gethostbyname (3) ব্যবহার করে অ্যাপ্লিকেশনগুলির জন্য কাজ করে - এর অর্থ এটি নির্দিষ্ট অ্যাপ্লিকেশন কল দ্বারা হোস্টের নামটি স্পষ্টভাবে সমাধান করার চেষ্টা করা অ্যাপ্লিকেশনগুলির জন্য কাজ করবে: এটি কখনই হয় না। unix.stackexchange.com/questions/10438/… দেখুন, তবে একমাত্র সমাধান হ'ল স্থানীয় ডিএনএস (ডিএনএসএমএসকি)
নাদির

1
দেখে মনে হচ্ছে এই কৌশলটি হ্রাস করা হয়েছে। জেথোস্টবাইনেম * (), জেথোস্টবিয়াড্ডার * (), হেরর (), এবং hstrerror () ফাংশনগুলি অপ্রচলিত। যদি আপনার সিস্টেমটি স্থানীয়ভাবে DNSMasq চালায় তবে আপনি ডিএনএস ব্যবহার করে এমন কোনও রেজোলিউশনের জন্য এটির নাম রাখতে পারেন।
টেকনোপল

24

আপনি এটি আপনার ডিএনএস সার্ভারে সেটআপ করতে পারেন, সিএনএম রেকর্ডগুলি কোনও মেশিনকে একাধিক হোস্টনাম দ্বারা পরিচিত হওয়ার অনুমতি দেয়। সুতরাং আপনার ডিএনএস সার্ভারে সিএমএল রেকর্ডগুলি যুক্ত করুন:


fakehost1 IN CNAME realhost 
fakehost2 IN CNAME realhost 
fakehost3 IN CNAME realhost 


3
চেষ্টা করার জন্য একটি হালকা ওজনের ডিএনএস সার্ভার হ'ল dnsmasq(এটি ডিএইচসিপিও সরবরাহ করে)।
সাইবারোন

17

আমি প্রায়শই পরিবেশের ভেরিয়েবলগুলি দিয়ে এটি করি। আমি জানি এটি কেবল কমান্ড লাইনের জন্যই কাজ করে, তবে এটিই আমি প্রায়শই হোস্টনাম এলিয়াসগুলির জন্য আগ্রহী (আমি বেশ কয়েকটি সুপার কম্পিউটার কম্পিউটার অ্যাকাউন্টে লং ইউআরএল সহ কাজ করেছি)। এখানে একটি উদাহরণ রয়েছে, যদি আপনি BASH ব্যবহার করছেন। ~ / .Bashrc এ:

জালিয়াতি রফতানি করুন "" দীর্ঘ.আস.অনয়নিং.আরল.org

তারপরে, একটি তাজা শেলের মধ্যে:

ssh ক্রিস্টোফার @ $ ফেকহোস্ট


11

এটি করার একমাত্র উপায় যদি আপনার নিজের স্থানীয় ডিএনএস সার্ভার থাকে।


1
হ্যাঁ, এখন এটিই একমাত্র সমাধান বলে মনে হচ্ছে। ধন্যবাদ। আমার যথেষ্ট খ্যাতি নেই বলে উজ্জীবিত করা যায় না।

যদি কোনও ডিএসএল বা ডায়ালআপ সংযোগের সদা পরিবর্তিত আইপি ঠিকানাটি সমস্যা হয় তবে আইএমএইচও, ডাইন্ডেন্স একটি আরও ভাল সমাধান।
সোভেন

না, এটি এর চেয়ে ভাল সমাধান নয়। একবার সার্ভারের কোনও হোস্টনাম থাকে যা অন্য কোনও কিছু দ্বারা পরিচালিত হয় তারপরে সমস্ত ওপি প্রয়োজন প্রথম হোস্টনামের সিএমএল। DYNDNS এবং অনুরূপ হোস্টের উপর নির্ভর করে ডিএনএস সার্ভারকে জানিয়ে দেয় যে এটির আইপি পরিবর্তন হয়েছে।
থিয়োথেরিগ্রাহ করুন

5

/Etc/hosts.aliases ব্যবহার বাইন্ড রিসলভার লাইব্রেরির মানক বৈশিষ্ট্য। এটি / ইত্যাদি / হোস্টগুলিতে এন্ট্রি যুক্ত করার চেয়ে আরও শক্তিশালী এবং আপনি যদি নিজের ডিএনএসে সিএনএমএস যোগ করতে না পারেন (এটিতে অ্যাক্সেস নেই) ব্যবহার করা যেতে পারে।

সাধারণভাবে সেরা অনুশীলন হ'ল /etc/resolv.conf এ সংজ্ঞায়িত যথাযথ লুহ সহ ডিএনএসে সিএনএমএস ব্যবহার করা।

/ ইত্যাদি / হোস্টগুলি আপডেট করা খুব জোরালো নয় কারণ এন্ট্রিগুলিকে আইপি পরিবর্তনের সাথে সিঙ্কে রাখতে হয়। এটি কেবলমাত্র একটি ছোট স্কেলে কাজ করে বা যখন আপনি হোস্ট মানচিত্র বিতরণ করতে কোনও নাম পরিষেবা ব্যবহার করেন (যেমন ldap এর মাধ্যমে)।

আর একটি সমাধান হতে পারে ডিএনএসমাস্ক http://en.wikedia.org/wiki/Dnsmasq


আমি সেন্টস 6 এ /etc/hosts.aliases ব্যবহার করার চেষ্টা করেছি তবে এই বৈশিষ্ট্যটি কাজ করছে বলে মনে হয় না। বা এর ব্যবহার বা অস্তিত্ব সম্পর্কে কোনও নথিও আমি পাই না। আমি কোথায় খুঁজছি?
এমডিপিসি

5

আপনার একটি ডাইন্ডেন্স সার্ভার দরকার যা আপনার বর্তমান আইপি ঠিকানাটিকে একটি হোস্টনামে ম্যাপ করবে। আপনি যখনই লগইন করবেন আপনি এই সার্ভারটি আপনার বর্তমান আইপি ঠিকানা সম্পর্কে বলবেন এবং এটি আপনার হোস্টনাম রেকর্ডটি আপডেট করবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.